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.
- package/README.md +46 -19
- package/dist/alphalib/assembly-linter.js +1 -1
- package/dist/alphalib/assembly-linter.js.map +1 -1
- package/dist/alphalib/stepParsing.js +2 -2
- package/dist/alphalib/stepParsing.js.map +1 -1
- package/dist/alphalib/types/assemblyReplay.d.ts +2 -7860
- package/dist/alphalib/types/assemblyReplay.d.ts.map +1 -1
- package/dist/alphalib/types/assemblyReplayNotification.d.ts +2 -7860
- package/dist/alphalib/types/assemblyReplayNotification.d.ts.map +1 -1
- package/dist/alphalib/types/assemblyStatus.d.ts +4807 -298
- package/dist/alphalib/types/assemblyStatus.d.ts.map +1 -1
- package/dist/alphalib/types/assemblyStatus.js +36 -1
- package/dist/alphalib/types/assemblyStatus.js.map +1 -1
- package/dist/alphalib/types/robots/_index.d.ts +903 -72620
- package/dist/alphalib/types/robots/_index.d.ts.map +1 -1
- package/dist/alphalib/types/robots/_index.js +62 -11
- package/dist/alphalib/types/robots/_index.js.map +1 -1
- package/dist/alphalib/types/robots/_instructions-primitives.d.ts +41 -10
- package/dist/alphalib/types/robots/_instructions-primitives.d.ts.map +1 -1
- package/dist/alphalib/types/robots/_instructions-primitives.js +89 -3
- package/dist/alphalib/types/robots/_instructions-primitives.js.map +1 -1
- package/dist/alphalib/types/robots/ai-chat.d.ts +33 -0
- package/dist/alphalib/types/robots/ai-chat.d.ts.map +1 -1
- package/dist/alphalib/types/robots/ai-chat.js +28 -5
- package/dist/alphalib/types/robots/ai-chat.js.map +1 -1
- package/dist/alphalib/types/robots/assembly-savejson.d.ts.map +1 -1
- package/dist/alphalib/types/robots/assembly-savejson.js +8 -0
- package/dist/alphalib/types/robots/assembly-savejson.js.map +1 -1
- package/dist/alphalib/types/robots/audio-artwork.d.ts.map +1 -1
- package/dist/alphalib/types/robots/audio-artwork.js +4 -5
- package/dist/alphalib/types/robots/audio-artwork.js.map +1 -1
- package/dist/alphalib/types/robots/audio-concat.d.ts.map +1 -1
- package/dist/alphalib/types/robots/audio-concat.js +1 -2
- package/dist/alphalib/types/robots/audio-concat.js.map +1 -1
- package/dist/alphalib/types/robots/audio-encode.d.ts.map +1 -1
- package/dist/alphalib/types/robots/audio-encode.js +1 -2
- package/dist/alphalib/types/robots/audio-encode.js.map +1 -1
- package/dist/alphalib/types/robots/audio-loop.d.ts.map +1 -1
- package/dist/alphalib/types/robots/audio-loop.js +1 -2
- package/dist/alphalib/types/robots/audio-loop.js.map +1 -1
- package/dist/alphalib/types/robots/audio-merge.d.ts.map +1 -1
- package/dist/alphalib/types/robots/audio-merge.js +1 -2
- package/dist/alphalib/types/robots/audio-merge.js.map +1 -1
- package/dist/alphalib/types/robots/audio-split.d.ts +2936 -0
- package/dist/alphalib/types/robots/audio-split.d.ts.map +1 -0
- package/dist/alphalib/types/robots/audio-split.js +88 -0
- package/dist/alphalib/types/robots/audio-split.js.map +1 -0
- package/dist/alphalib/types/robots/audio-waveform.d.ts +92 -6
- package/dist/alphalib/types/robots/audio-waveform.d.ts.map +1 -1
- package/dist/alphalib/types/robots/audio-waveform.js +72 -6
- package/dist/alphalib/types/robots/audio-waveform.js.map +1 -1
- package/dist/alphalib/types/robots/azure-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/azure-import.js +0 -1
- package/dist/alphalib/types/robots/azure-import.js.map +1 -1
- package/dist/alphalib/types/robots/azure-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/azure-store.js +0 -1
- package/dist/alphalib/types/robots/azure-store.js.map +1 -1
- package/dist/alphalib/types/robots/backblaze-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/backblaze-import.js +0 -1
- package/dist/alphalib/types/robots/backblaze-import.js.map +1 -1
- package/dist/alphalib/types/robots/backblaze-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/backblaze-store.js +0 -1
- package/dist/alphalib/types/robots/backblaze-store.js.map +1 -1
- package/dist/alphalib/types/robots/box-import.d.ts +150 -0
- package/dist/alphalib/types/robots/box-import.d.ts.map +1 -0
- package/dist/alphalib/types/robots/box-import.js +63 -0
- package/dist/alphalib/types/robots/box-import.js.map +1 -0
- package/dist/alphalib/types/robots/box-store.d.ts +455 -0
- package/dist/alphalib/types/robots/box-store.d.ts.map +1 -0
- package/dist/alphalib/types/robots/box-store.js +66 -0
- package/dist/alphalib/types/robots/box-store.js.map +1 -0
- package/dist/alphalib/types/robots/cloudfiles-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/cloudfiles-import.js +0 -1
- package/dist/alphalib/types/robots/cloudfiles-import.js.map +1 -1
- package/dist/alphalib/types/robots/cloudfiles-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/cloudfiles-store.js +0 -1
- package/dist/alphalib/types/robots/cloudfiles-store.js.map +1 -1
- package/dist/alphalib/types/robots/cloudflare-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/cloudflare-import.js +0 -1
- package/dist/alphalib/types/robots/cloudflare-import.js.map +1 -1
- package/dist/alphalib/types/robots/cloudflare-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/cloudflare-store.js +0 -1
- package/dist/alphalib/types/robots/cloudflare-store.js.map +1 -1
- package/dist/alphalib/types/robots/digitalocean-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/digitalocean-import.js +0 -1
- package/dist/alphalib/types/robots/digitalocean-import.js.map +1 -1
- package/dist/alphalib/types/robots/digitalocean-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/digitalocean-store.js +0 -1
- package/dist/alphalib/types/robots/digitalocean-store.js.map +1 -1
- package/dist/alphalib/types/robots/document-autorotate.d.ts.map +1 -1
- package/dist/alphalib/types/robots/document-autorotate.js +8 -1
- package/dist/alphalib/types/robots/document-autorotate.js.map +1 -1
- package/dist/alphalib/types/robots/document-convert.d.ts +8 -8
- package/dist/alphalib/types/robots/document-convert.d.ts.map +1 -1
- package/dist/alphalib/types/robots/document-convert.js +9 -3
- package/dist/alphalib/types/robots/document-convert.js.map +1 -1
- package/dist/alphalib/types/robots/document-merge.d.ts.map +1 -1
- package/dist/alphalib/types/robots/document-merge.js +0 -1
- package/dist/alphalib/types/robots/document-merge.js.map +1 -1
- package/dist/alphalib/types/robots/document-ocr.d.ts.map +1 -1
- package/dist/alphalib/types/robots/document-ocr.js +0 -1
- package/dist/alphalib/types/robots/document-ocr.js.map +1 -1
- package/dist/alphalib/types/robots/document-optimize.d.ts.map +1 -1
- package/dist/alphalib/types/robots/document-optimize.js +0 -1
- package/dist/alphalib/types/robots/document-optimize.js.map +1 -1
- package/dist/alphalib/types/robots/document-split.d.ts.map +1 -1
- package/dist/alphalib/types/robots/document-split.js +9 -1
- package/dist/alphalib/types/robots/document-split.js.map +1 -1
- package/dist/alphalib/types/robots/document-thumbs.d.ts +12 -0
- package/dist/alphalib/types/robots/document-thumbs.d.ts.map +1 -1
- package/dist/alphalib/types/robots/document-thumbs.js +23 -4
- package/dist/alphalib/types/robots/document-thumbs.js.map +1 -1
- package/dist/alphalib/types/robots/dropbox-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/dropbox-import.js +0 -1
- package/dist/alphalib/types/robots/dropbox-import.js.map +1 -1
- package/dist/alphalib/types/robots/dropbox-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/dropbox-store.js +0 -1
- package/dist/alphalib/types/robots/dropbox-store.js.map +1 -1
- package/dist/alphalib/types/robots/edgly-deliver.d.ts.map +1 -1
- package/dist/alphalib/types/robots/edgly-deliver.js +8 -1
- package/dist/alphalib/types/robots/edgly-deliver.js.map +1 -1
- package/dist/alphalib/types/robots/file-compress.d.ts +12 -0
- package/dist/alphalib/types/robots/file-compress.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-compress.js +8 -1
- package/dist/alphalib/types/robots/file-compress.js.map +1 -1
- package/dist/alphalib/types/robots/file-decompress.d.ts +24 -0
- package/dist/alphalib/types/robots/file-decompress.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-decompress.js +30 -5
- package/dist/alphalib/types/robots/file-decompress.js.map +1 -1
- package/dist/alphalib/types/robots/file-filter.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-filter.js +23 -6
- package/dist/alphalib/types/robots/file-filter.js.map +1 -1
- package/dist/alphalib/types/robots/file-hash.d.ts +24 -0
- package/dist/alphalib/types/robots/file-hash.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-hash.js +23 -1
- package/dist/alphalib/types/robots/file-hash.js.map +1 -1
- package/dist/alphalib/types/robots/file-preview.d.ts +12 -0
- package/dist/alphalib/types/robots/file-preview.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-preview.js +8 -1
- package/dist/alphalib/types/robots/file-preview.js.map +1 -1
- package/dist/alphalib/types/robots/file-read.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-read.js +9 -1
- package/dist/alphalib/types/robots/file-read.js.map +1 -1
- package/dist/alphalib/types/robots/file-serve.d.ts +12 -0
- package/dist/alphalib/types/robots/file-serve.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-serve.js +38 -7
- package/dist/alphalib/types/robots/file-serve.js.map +1 -1
- package/dist/alphalib/types/robots/file-verify.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-verify.js +0 -1
- package/dist/alphalib/types/robots/file-verify.js.map +1 -1
- package/dist/alphalib/types/robots/file-virusscan.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-virusscan.js +5 -4
- package/dist/alphalib/types/robots/file-virusscan.js.map +1 -1
- package/dist/alphalib/types/robots/file-watermark.d.ts.map +1 -1
- package/dist/alphalib/types/robots/file-watermark.js +10 -0
- package/dist/alphalib/types/robots/file-watermark.js.map +1 -1
- package/dist/alphalib/types/robots/ftp-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/ftp-import.js +0 -1
- package/dist/alphalib/types/robots/ftp-import.js.map +1 -1
- package/dist/alphalib/types/robots/ftp-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/ftp-store.js +0 -1
- package/dist/alphalib/types/robots/ftp-store.js.map +1 -1
- package/dist/alphalib/types/robots/google-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/google-import.js +0 -1
- package/dist/alphalib/types/robots/google-import.js.map +1 -1
- package/dist/alphalib/types/robots/google-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/google-store.js +0 -1
- package/dist/alphalib/types/robots/google-store.js.map +1 -1
- package/dist/alphalib/types/robots/html-convert.d.ts.map +1 -1
- package/dist/alphalib/types/robots/html-convert.js +0 -1
- package/dist/alphalib/types/robots/html-convert.js.map +1 -1
- package/dist/alphalib/types/robots/http-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/http-import.js +0 -1
- package/dist/alphalib/types/robots/http-import.js.map +1 -1
- package/dist/alphalib/types/robots/image-bgremove.d.ts +8 -8
- package/dist/alphalib/types/robots/image-bgremove.d.ts.map +1 -1
- package/dist/alphalib/types/robots/image-bgremove.js +4 -2
- package/dist/alphalib/types/robots/image-bgremove.js.map +1 -1
- package/dist/alphalib/types/robots/image-copyrightdetect.d.ts +465 -0
- package/dist/alphalib/types/robots/image-copyrightdetect.d.ts.map +1 -0
- package/dist/alphalib/types/robots/image-copyrightdetect.js +136 -0
- package/dist/alphalib/types/robots/image-copyrightdetect.js.map +1 -0
- package/dist/alphalib/types/robots/image-describe.d.ts.map +1 -1
- package/dist/alphalib/types/robots/image-describe.js +0 -1
- package/dist/alphalib/types/robots/image-describe.js.map +1 -1
- package/dist/alphalib/types/robots/image-enhance.d.ts +502 -0
- package/dist/alphalib/types/robots/image-enhance.d.ts.map +1 -0
- package/dist/alphalib/types/robots/image-enhance.js +146 -0
- package/dist/alphalib/types/robots/image-enhance.js.map +1 -0
- package/dist/alphalib/types/robots/image-facedetect.d.ts.map +1 -1
- package/dist/alphalib/types/robots/image-facedetect.js +0 -1
- package/dist/alphalib/types/robots/image-facedetect.js.map +1 -1
- package/dist/alphalib/types/robots/image-generate.d.ts +4 -5
- package/dist/alphalib/types/robots/image-generate.d.ts.map +1 -1
- package/dist/alphalib/types/robots/image-generate.js +62 -8
- package/dist/alphalib/types/robots/image-generate.js.map +1 -1
- package/dist/alphalib/types/robots/image-merge.d.ts +12 -12
- package/dist/alphalib/types/robots/image-merge.d.ts.map +1 -1
- package/dist/alphalib/types/robots/image-merge.js +0 -1
- package/dist/alphalib/types/robots/image-merge.js.map +1 -1
- package/dist/alphalib/types/robots/image-ocr.d.ts.map +1 -1
- package/dist/alphalib/types/robots/image-ocr.js +0 -1
- package/dist/alphalib/types/robots/image-ocr.js.map +1 -1
- package/dist/alphalib/types/robots/image-optimize.d.ts +12 -0
- package/dist/alphalib/types/robots/image-optimize.d.ts.map +1 -1
- package/dist/alphalib/types/robots/image-optimize.js +16 -3
- package/dist/alphalib/types/robots/image-optimize.js.map +1 -1
- package/dist/alphalib/types/robots/image-resize.d.ts +20 -8
- package/dist/alphalib/types/robots/image-resize.d.ts.map +1 -1
- package/dist/alphalib/types/robots/image-resize.js +37 -1
- package/dist/alphalib/types/robots/image-resize.js.map +1 -1
- package/dist/alphalib/types/robots/image-upscale.d.ts +447 -0
- package/dist/alphalib/types/robots/image-upscale.d.ts.map +1 -0
- package/dist/alphalib/types/robots/image-upscale.js +65 -0
- package/dist/alphalib/types/robots/image-upscale.js.map +1 -0
- package/dist/alphalib/types/robots/mega-import.d.ts +244 -0
- package/dist/alphalib/types/robots/mega-import.d.ts.map +1 -0
- package/dist/alphalib/types/robots/mega-import.js +84 -0
- package/dist/alphalib/types/robots/mega-import.js.map +1 -0
- package/dist/alphalib/types/robots/mega-store.d.ts +526 -0
- package/dist/alphalib/types/robots/mega-store.d.ts.map +1 -0
- package/dist/alphalib/types/robots/mega-store.js +82 -0
- package/dist/alphalib/types/robots/mega-store.js.map +1 -0
- package/dist/alphalib/types/robots/meta-read.d.ts.map +1 -1
- package/dist/alphalib/types/robots/meta-read.js +8 -0
- package/dist/alphalib/types/robots/meta-read.js.map +1 -1
- package/dist/alphalib/types/robots/meta-write.d.ts.map +1 -1
- package/dist/alphalib/types/robots/meta-write.js +0 -1
- package/dist/alphalib/types/robots/meta-write.js.map +1 -1
- package/dist/alphalib/types/robots/minio-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/minio-import.js +0 -1
- package/dist/alphalib/types/robots/minio-import.js.map +1 -1
- package/dist/alphalib/types/robots/minio-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/minio-store.js +0 -1
- package/dist/alphalib/types/robots/minio-store.js.map +1 -1
- package/dist/alphalib/types/robots/progress-simulate.d.ts.map +1 -1
- package/dist/alphalib/types/robots/progress-simulate.js +13 -0
- package/dist/alphalib/types/robots/progress-simulate.js.map +1 -1
- package/dist/alphalib/types/robots/s3-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/s3-import.js +0 -1
- package/dist/alphalib/types/robots/s3-import.js.map +1 -1
- package/dist/alphalib/types/robots/s3-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/s3-store.js +0 -1
- package/dist/alphalib/types/robots/s3-store.js.map +1 -1
- package/dist/alphalib/types/robots/script-run.d.ts.map +1 -1
- package/dist/alphalib/types/robots/script-run.js +10 -1
- package/dist/alphalib/types/robots/script-run.js.map +1 -1
- package/dist/alphalib/types/robots/sftp-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/sftp-import.js +0 -1
- package/dist/alphalib/types/robots/sftp-import.js.map +1 -1
- package/dist/alphalib/types/robots/sftp-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/sftp-store.js +0 -1
- package/dist/alphalib/types/robots/sftp-store.js.map +1 -1
- package/dist/alphalib/types/robots/speech-transcribe.d.ts.map +1 -1
- package/dist/alphalib/types/robots/speech-transcribe.js +0 -1
- package/dist/alphalib/types/robots/speech-transcribe.js.map +1 -1
- package/dist/alphalib/types/robots/supabase-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/supabase-import.js +0 -1
- package/dist/alphalib/types/robots/supabase-import.js.map +1 -1
- package/dist/alphalib/types/robots/supabase-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/supabase-store.js +0 -1
- package/dist/alphalib/types/robots/supabase-store.js.map +1 -1
- package/dist/alphalib/types/robots/swift-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/swift-import.js +0 -1
- package/dist/alphalib/types/robots/swift-import.js.map +1 -1
- package/dist/alphalib/types/robots/swift-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/swift-store.js +0 -1
- package/dist/alphalib/types/robots/swift-store.js.map +1 -1
- package/dist/alphalib/types/robots/text-speak.d.ts.map +1 -1
- package/dist/alphalib/types/robots/text-speak.js +0 -1
- package/dist/alphalib/types/robots/text-speak.js.map +1 -1
- package/dist/alphalib/types/robots/text-translate.d.ts.map +1 -1
- package/dist/alphalib/types/robots/text-translate.js +0 -1
- package/dist/alphalib/types/robots/text-translate.js.map +1 -1
- package/dist/alphalib/types/robots/tigris-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/tigris-import.js +0 -1
- package/dist/alphalib/types/robots/tigris-import.js.map +1 -1
- package/dist/alphalib/types/robots/tigris-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/tigris-store.js +0 -1
- package/dist/alphalib/types/robots/tigris-store.js.map +1 -1
- package/dist/alphalib/types/robots/tlcdn-deliver.d.ts.map +1 -1
- package/dist/alphalib/types/robots/tlcdn-deliver.js +8 -1
- package/dist/alphalib/types/robots/tlcdn-deliver.js.map +1 -1
- package/dist/alphalib/types/robots/tus-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/tus-store.js +1 -14
- package/dist/alphalib/types/robots/tus-store.js.map +1 -1
- package/dist/alphalib/types/robots/upload-handle.d.ts.map +1 -1
- package/dist/alphalib/types/robots/upload-handle.js +0 -1
- package/dist/alphalib/types/robots/upload-handle.js.map +1 -1
- package/dist/alphalib/types/robots/video-adaptive.d.ts +32 -8
- package/dist/alphalib/types/robots/video-adaptive.d.ts.map +1 -1
- package/dist/alphalib/types/robots/video-adaptive.js +22 -6
- package/dist/alphalib/types/robots/video-adaptive.js.map +1 -1
- package/dist/alphalib/types/robots/video-artwork.d.ts +2855 -0
- package/dist/alphalib/types/robots/video-artwork.d.ts.map +1 -0
- package/dist/alphalib/types/robots/video-artwork.js +66 -0
- package/dist/alphalib/types/robots/video-artwork.js.map +1 -0
- package/dist/alphalib/types/robots/video-concat.d.ts +36 -0
- package/dist/alphalib/types/robots/video-concat.d.ts.map +1 -1
- package/dist/alphalib/types/robots/video-concat.js +30 -1
- package/dist/alphalib/types/robots/video-concat.js.map +1 -1
- package/dist/alphalib/types/robots/video-encode.d.ts.map +1 -1
- package/dist/alphalib/types/robots/video-encode.js +0 -1
- package/dist/alphalib/types/robots/video-encode.js.map +1 -1
- package/dist/alphalib/types/robots/video-generate.d.ts +594 -0
- package/dist/alphalib/types/robots/video-generate.d.ts.map +1 -0
- package/dist/alphalib/types/robots/video-generate.js +90 -0
- package/dist/alphalib/types/robots/video-generate.js.map +1 -0
- package/dist/alphalib/types/robots/video-merge.d.ts +24 -0
- package/dist/alphalib/types/robots/video-merge.d.ts.map +1 -1
- package/dist/alphalib/types/robots/video-merge.js +33 -1
- package/dist/alphalib/types/robots/video-merge.js.map +1 -1
- package/dist/alphalib/types/robots/video-ondemand.d.ts.map +1 -1
- package/dist/alphalib/types/robots/video-ondemand.js +3 -4
- package/dist/alphalib/types/robots/video-ondemand.js.map +1 -1
- package/dist/alphalib/types/robots/video-split.d.ts +2939 -0
- package/dist/alphalib/types/robots/video-split.d.ts.map +1 -0
- package/dist/alphalib/types/robots/video-split.js +78 -0
- package/dist/alphalib/types/robots/video-split.js.map +1 -0
- package/dist/alphalib/types/robots/video-subtitle.d.ts +52 -4
- package/dist/alphalib/types/robots/video-subtitle.d.ts.map +1 -1
- package/dist/alphalib/types/robots/video-subtitle.js +61 -8
- package/dist/alphalib/types/robots/video-subtitle.js.map +1 -1
- package/dist/alphalib/types/robots/video-thumbs.d.ts.map +1 -1
- package/dist/alphalib/types/robots/video-thumbs.js +0 -1
- package/dist/alphalib/types/robots/video-thumbs.js.map +1 -1
- package/dist/alphalib/types/robots/vimeo-import.d.ts +4 -4
- package/dist/alphalib/types/robots/vimeo-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/vimeo-import.js +0 -1
- package/dist/alphalib/types/robots/vimeo-import.js.map +1 -1
- package/dist/alphalib/types/robots/vimeo-store.d.ts +2 -2
- package/dist/alphalib/types/robots/vimeo-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/vimeo-store.js +14 -3
- package/dist/alphalib/types/robots/vimeo-store.js.map +1 -1
- package/dist/alphalib/types/robots/wasabi-import.d.ts.map +1 -1
- package/dist/alphalib/types/robots/wasabi-import.js +0 -1
- package/dist/alphalib/types/robots/wasabi-import.js.map +1 -1
- package/dist/alphalib/types/robots/wasabi-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/wasabi-store.js +0 -1
- package/dist/alphalib/types/robots/wasabi-store.js.map +1 -1
- package/dist/alphalib/types/robots/youtube-store.d.ts.map +1 -1
- package/dist/alphalib/types/robots/youtube-store.js +4 -5
- package/dist/alphalib/types/robots/youtube-store.js.map +1 -1
- package/dist/alphalib/types/template.d.ts +41 -132175
- package/dist/alphalib/types/template.d.ts.map +1 -1
- package/dist/alphalib/types/template.js +16 -3
- package/dist/alphalib/types/template.js.map +1 -1
- package/dist/alphalib/types/templateCredential.d.ts +3 -3
- package/dist/alphalib/types/templateCredential.d.ts.map +1 -1
- package/dist/alphalib/types/templateCredential.js +1 -0
- package/dist/alphalib/types/templateCredential.js.map +1 -1
- package/dist/alphalib/zodParseWithContext.d.ts.map +1 -1
- package/dist/alphalib/zodParseWithContext.js +15 -11
- package/dist/alphalib/zodParseWithContext.js.map +1 -1
- package/dist/cli/generateIntentDocs.d.ts +5 -1
- package/dist/cli/generateIntentDocs.d.ts.map +1 -1
- package/dist/cli/generateIntentDocs.js +25 -9
- package/dist/cli/generateIntentDocs.js.map +1 -1
- package/dist/cli/intentCommandSpecs.d.ts.map +1 -1
- package/dist/cli/intentCommandSpecs.js +4 -6
- package/dist/cli/intentCommandSpecs.js.map +1 -1
- package/dist/cli/intentRuntime.d.ts.map +1 -1
- package/dist/cli/intentRuntime.js +4 -4
- package/dist/cli/intentRuntime.js.map +1 -1
- package/dist/cli/semanticIntents/imageDescribe.d.ts +3 -1
- package/dist/cli/semanticIntents/imageDescribe.d.ts.map +1 -1
- package/dist/cli/semanticIntents/imageDescribe.js +1 -1
- package/dist/cli/semanticIntents/imageDescribe.js.map +1 -1
- package/dist/cli/semanticIntents/imageGenerate.d.ts +94 -0
- package/dist/cli/semanticIntents/imageGenerate.d.ts.map +1 -0
- package/dist/cli/semanticIntents/imageGenerate.js +215 -0
- package/dist/cli/semanticIntents/imageGenerate.js.map +1 -0
- package/dist/cli/semanticIntents/index.d.ts +3 -1
- package/dist/cli/semanticIntents/index.d.ts.map +1 -1
- package/dist/cli/semanticIntents/index.js +2 -0
- package/dist/cli/semanticIntents/index.js.map +1 -1
- package/dist/cli/semanticIntents/markdownPdf.js +1 -1
- package/dist/cli/semanticIntents/markdownPdf.js.map +1 -1
- package/dist/cli.js +0 -0
- package/dist/robots.js +2 -2
- package/dist/robots.js.map +1 -1
- package/package.json +1 -1
- package/src/alphalib/assembly-linter.ts +1 -1
- package/src/alphalib/stepParsing.ts +2 -2
- package/src/alphalib/types/assemblyStatus.ts +41 -2
- package/src/alphalib/types/robots/_index.ts +211 -20
- package/src/alphalib/types/robots/_instructions-primitives.ts +93 -3
- package/src/alphalib/types/robots/ai-chat.ts +35 -5
- package/src/alphalib/types/robots/assembly-savejson.ts +8 -0
- package/src/alphalib/types/robots/audio-artwork.ts +4 -5
- package/src/alphalib/types/robots/audio-concat.ts +1 -2
- package/src/alphalib/types/robots/audio-encode.ts +1 -2
- package/src/alphalib/types/robots/audio-loop.ts +1 -2
- package/src/alphalib/types/robots/audio-merge.ts +1 -2
- package/src/alphalib/types/robots/audio-split.ts +130 -0
- package/src/alphalib/types/robots/audio-waveform.ts +90 -6
- package/src/alphalib/types/robots/azure-import.ts +0 -1
- package/src/alphalib/types/robots/azure-store.ts +0 -1
- package/src/alphalib/types/robots/backblaze-import.ts +0 -1
- package/src/alphalib/types/robots/backblaze-store.ts +0 -1
- package/src/alphalib/types/robots/box-import.ts +97 -0
- package/src/alphalib/types/robots/box-store.ts +94 -0
- package/src/alphalib/types/robots/cloudfiles-import.ts +0 -1
- package/src/alphalib/types/robots/cloudfiles-store.ts +0 -1
- package/src/alphalib/types/robots/cloudflare-import.ts +0 -1
- package/src/alphalib/types/robots/cloudflare-store.ts +0 -1
- package/src/alphalib/types/robots/digitalocean-import.ts +0 -1
- package/src/alphalib/types/robots/digitalocean-store.ts +0 -1
- package/src/alphalib/types/robots/document-autorotate.ts +8 -1
- package/src/alphalib/types/robots/document-convert.ts +10 -3
- package/src/alphalib/types/robots/document-merge.ts +0 -1
- package/src/alphalib/types/robots/document-ocr.ts +0 -1
- package/src/alphalib/types/robots/document-optimize.ts +0 -1
- package/src/alphalib/types/robots/document-split.ts +9 -1
- package/src/alphalib/types/robots/document-thumbs.ts +26 -4
- package/src/alphalib/types/robots/dropbox-import.ts +0 -1
- package/src/alphalib/types/robots/dropbox-store.ts +0 -1
- package/src/alphalib/types/robots/edgly-deliver.ts +8 -1
- package/src/alphalib/types/robots/file-compress.ts +8 -1
- package/src/alphalib/types/robots/file-decompress.ts +30 -5
- package/src/alphalib/types/robots/file-filter.ts +23 -6
- package/src/alphalib/types/robots/file-hash.ts +23 -1
- package/src/alphalib/types/robots/file-preview.ts +8 -1
- package/src/alphalib/types/robots/file-read.ts +9 -1
- package/src/alphalib/types/robots/file-serve.ts +39 -7
- package/src/alphalib/types/robots/file-verify.ts +0 -1
- package/src/alphalib/types/robots/file-virusscan.ts +6 -4
- package/src/alphalib/types/robots/file-watermark.ts +10 -0
- package/src/alphalib/types/robots/ftp-import.ts +0 -1
- package/src/alphalib/types/robots/ftp-store.ts +0 -1
- package/src/alphalib/types/robots/google-import.ts +0 -1
- package/src/alphalib/types/robots/google-store.ts +0 -1
- package/src/alphalib/types/robots/html-convert.ts +0 -1
- package/src/alphalib/types/robots/http-import.ts +0 -1
- package/src/alphalib/types/robots/image-bgremove.ts +4 -2
- package/src/alphalib/types/robots/image-copyrightdetect.ts +167 -0
- package/src/alphalib/types/robots/image-describe.ts +0 -1
- package/src/alphalib/types/robots/image-enhance.ts +185 -0
- package/src/alphalib/types/robots/image-facedetect.ts +0 -1
- package/src/alphalib/types/robots/image-generate.ts +74 -8
- package/src/alphalib/types/robots/image-merge.ts +0 -1
- package/src/alphalib/types/robots/image-ocr.ts +0 -1
- package/src/alphalib/types/robots/image-optimize.ts +16 -3
- package/src/alphalib/types/robots/image-resize.ts +37 -1
- package/src/alphalib/types/robots/image-upscale.ts +93 -0
- package/src/alphalib/types/robots/mega-import.ts +123 -0
- package/src/alphalib/types/robots/mega-store.ts +109 -0
- package/src/alphalib/types/robots/meta-read.ts +8 -0
- package/src/alphalib/types/robots/meta-write.ts +0 -1
- package/src/alphalib/types/robots/minio-import.ts +0 -1
- package/src/alphalib/types/robots/minio-store.ts +0 -1
- package/src/alphalib/types/robots/progress-simulate.ts +13 -0
- package/src/alphalib/types/robots/s3-import.ts +0 -1
- package/src/alphalib/types/robots/s3-store.ts +0 -1
- package/src/alphalib/types/robots/script-run.ts +11 -1
- package/src/alphalib/types/robots/sftp-import.ts +0 -1
- package/src/alphalib/types/robots/sftp-store.ts +0 -1
- package/src/alphalib/types/robots/speech-transcribe.ts +0 -1
- package/src/alphalib/types/robots/supabase-import.ts +0 -1
- package/src/alphalib/types/robots/supabase-store.ts +0 -1
- package/src/alphalib/types/robots/swift-import.ts +0 -1
- package/src/alphalib/types/robots/swift-store.ts +0 -1
- package/src/alphalib/types/robots/text-speak.ts +0 -1
- package/src/alphalib/types/robots/text-translate.ts +0 -1
- package/src/alphalib/types/robots/tigris-import.ts +0 -1
- package/src/alphalib/types/robots/tigris-store.ts +0 -1
- package/src/alphalib/types/robots/tlcdn-deliver.ts +8 -1
- package/src/alphalib/types/robots/tus-store.ts +1 -14
- package/src/alphalib/types/robots/upload-handle.ts +0 -1
- package/src/alphalib/types/robots/video-adaptive.ts +22 -6
- package/src/alphalib/types/robots/video-artwork.ts +100 -0
- package/src/alphalib/types/robots/video-concat.ts +30 -1
- package/src/alphalib/types/robots/video-encode.ts +0 -1
- package/src/alphalib/types/robots/video-generate.ts +120 -0
- package/src/alphalib/types/robots/video-merge.ts +33 -1
- package/src/alphalib/types/robots/video-ondemand.ts +3 -4
- package/src/alphalib/types/robots/video-split.ts +117 -0
- package/src/alphalib/types/robots/video-subtitle.ts +61 -8
- package/src/alphalib/types/robots/video-thumbs.ts +0 -1
- package/src/alphalib/types/robots/vimeo-import.ts +0 -1
- package/src/alphalib/types/robots/vimeo-store.ts +14 -3
- package/src/alphalib/types/robots/wasabi-import.ts +0 -1
- package/src/alphalib/types/robots/wasabi-store.ts +0 -1
- package/src/alphalib/types/robots/youtube-store.ts +4 -5
- package/src/alphalib/types/template.ts +47 -15
- package/src/alphalib/types/templateCredential.ts +1 -0
- package/src/alphalib/zodParseWithContext.ts +19 -12
- package/src/cli/generateIntentDocs.ts +28 -9
- package/src/cli/intentCommandSpecs.ts +4 -9
- package/src/cli/intentRuntime.ts +8 -3
- package/src/cli/semanticIntents/imageDescribe.ts +4 -1
- package/src/cli/semanticIntents/imageGenerate.ts +254 -0
- package/src/cli/semanticIntents/index.ts +6 -1
- package/src/cli/semanticIntents/markdownPdf.ts +1 -1
- package/src/robots.ts +2 -2
|
@@ -115,10 +115,20 @@ const coreMessageSchema = z.discriminatedUnion('role', [
|
|
|
115
115
|
|
|
116
116
|
export const meta: RobotMetaInput = {
|
|
117
117
|
name: 'AiChatRobot',
|
|
118
|
-
allowed_for_url_transform: true,
|
|
119
118
|
bytescount: 1,
|
|
120
119
|
discount_factor: 1,
|
|
121
120
|
discount_pct: 0,
|
|
121
|
+
example_code: {
|
|
122
|
+
steps: {
|
|
123
|
+
reply: {
|
|
124
|
+
robot: '/ai/chat',
|
|
125
|
+
model: 'auto',
|
|
126
|
+
messages:
|
|
127
|
+
'Summarize this in one sentence: Transloadit handles uploads and media processing.',
|
|
128
|
+
},
|
|
129
|
+
},
|
|
130
|
+
},
|
|
131
|
+
example_code_description: 'Generate a concise AI response from a text prompt:',
|
|
122
132
|
minimum_charge: 0,
|
|
123
133
|
output_factor: 0.6,
|
|
124
134
|
purpose_sentence: 'generates AI chat responses from prompts',
|
|
@@ -132,7 +142,7 @@ export const meta: RobotMetaInput = {
|
|
|
132
142
|
typical_file_type: 'document',
|
|
133
143
|
priceFactor: 1,
|
|
134
144
|
queueSlotCount: 10,
|
|
135
|
-
// Is this a
|
|
145
|
+
// Is this a sensible minimum charge? What if the customer supplies their own keys? Is it low enough for these cases?
|
|
136
146
|
minimumChargeUsd: 0.06,
|
|
137
147
|
isAllowedForUrlTransform: true,
|
|
138
148
|
trackOutputFileSize: true,
|
|
@@ -148,7 +158,6 @@ export const meta: RobotMetaInput = {
|
|
|
148
158
|
export const MODEL_CAPABILITIES: Record<string, { pdf: boolean; image: boolean }> = {
|
|
149
159
|
'anthropic/claude-4-sonnet-20250514': { pdf: true, image: true },
|
|
150
160
|
'anthropic/claude-4-opus-20250514': { pdf: true, image: true },
|
|
151
|
-
'anthropic/claude-sonnet-4-6': { pdf: true, image: true },
|
|
152
161
|
'anthropic/claude-sonnet-4-5': { pdf: true, image: true },
|
|
153
162
|
'anthropic/claude-opus-4-5': { pdf: true, image: true },
|
|
154
163
|
'anthropic/claude-opus-4-6': { pdf: true, image: true },
|
|
@@ -160,10 +169,19 @@ export const MODEL_CAPABILITIES: Record<string, { pdf: boolean; image: boolean }
|
|
|
160
169
|
'openai/gpt-5.2-2025-12-11': { pdf: false, image: true },
|
|
161
170
|
'openai/gpt-5.2-chat-latest': { pdf: false, image: true },
|
|
162
171
|
'openai/gpt-5.2-pro': { pdf: false, image: true },
|
|
172
|
+
'openai/gpt-5.4': { pdf: false, image: true },
|
|
173
|
+
'openai/gpt-5.4-mini': { pdf: false, image: true },
|
|
174
|
+
'openai/gpt-5.4-nano': { pdf: false, image: true },
|
|
163
175
|
'google/gemini-2.5-pro': { pdf: true, image: true },
|
|
164
176
|
'moonshot/kimi-k2': { pdf: false, image: false },
|
|
165
177
|
}
|
|
166
178
|
|
|
179
|
+
// Default model for /ai/chat when `model: "auto"` (or unset).
|
|
180
|
+
// 2026-02-10: default is Opus 4.6 (intentional; aligns with our current recommended Anthropic
|
|
181
|
+
// flagship model and the system tests in this repo). Keep this aligned with MODEL_CAPABILITIES.
|
|
182
|
+
export const AI_CHAT_DEFAULT_MODEL =
|
|
183
|
+
'anthropic/claude-opus-4-6' satisfies keyof typeof MODEL_CAPABILITIES
|
|
184
|
+
|
|
167
185
|
const supportedModelsList = Object.keys(MODEL_CAPABILITIES)
|
|
168
186
|
|
|
169
187
|
export const vendorModelSchema = z
|
|
@@ -179,7 +197,7 @@ export const robotAiChatInstructionsSchema = robotBase
|
|
|
179
197
|
.merge(robotUse)
|
|
180
198
|
.extend({
|
|
181
199
|
robot: z.literal('/ai/chat'),
|
|
182
|
-
//
|
|
200
|
+
// NOTE: model:"auto" is resolved server-side to AI_CHAT_DEFAULT_MODEL for now.
|
|
183
201
|
model: z
|
|
184
202
|
.union([vendorModelSchema, z.literal('auto')])
|
|
185
203
|
.default('auto')
|
|
@@ -196,6 +214,12 @@ export const robotAiChatInstructionsSchema = robotBase
|
|
|
196
214
|
.string()
|
|
197
215
|
.optional()
|
|
198
216
|
.describe('Set the system/developer prompt, if the model allows it'),
|
|
217
|
+
reasoning_effort: z
|
|
218
|
+
.enum(['high', 'medium', 'low'])
|
|
219
|
+
.optional()
|
|
220
|
+
.describe(
|
|
221
|
+
'Controls how much effort the model spends on reasoning. Higher values produce more thorough responses but cost more tokens. Applies to models that support extended thinking (OpenAI o-series, GPT-5.x, Anthropic Claude with thinking). If omitted, the model default is used.',
|
|
222
|
+
),
|
|
199
223
|
credentials: z
|
|
200
224
|
.union([z.string(), z.array(z.string())])
|
|
201
225
|
.optional()
|
|
@@ -215,11 +239,17 @@ export const robotAiChatInstructionsSchema = robotBase
|
|
|
215
239
|
url: z.string(),
|
|
216
240
|
headers: z.record(z.string()).optional(),
|
|
217
241
|
auth: z.enum(['transloadit']).optional(),
|
|
242
|
+
allowed_tools: z
|
|
243
|
+
.array(z.string())
|
|
244
|
+
.optional()
|
|
245
|
+
.describe(
|
|
246
|
+
'Optional allowlist of tool names to expose from this MCP server. If omitted, all tools exposed by the server are available to the model.',
|
|
247
|
+
),
|
|
218
248
|
}),
|
|
219
249
|
)
|
|
220
250
|
.optional()
|
|
221
251
|
.describe(
|
|
222
|
-
'The MCP servers to use.
|
|
252
|
+
'The MCP servers to use for tool calling. You can use any MCP server reachable from your environment. Use `headers` to pass server-specific auth (for example `Authorization: Bearer <token>`). For Transloadit\'s MCP server: Bearer tokens minted via `/token` satisfy Signature Authentication (signature checks apply only to key/secret requests). `auth: "transloadit"` is reserved for API2-managed auth to Transloadit-hosted MCP servers.',
|
|
223
253
|
),
|
|
224
254
|
})
|
|
225
255
|
.strict()
|
|
@@ -5,6 +5,14 @@ import { interpolateRobot, robotBase } from './_instructions-primitives.ts'
|
|
|
5
5
|
// @ts-expect-error - AssemblySavejsonRobot is not ready yet @TODO please supply missing keys
|
|
6
6
|
export const meta: RobotMetaInput = {
|
|
7
7
|
name: 'AssemblySavejsonRobot',
|
|
8
|
+
example_code: {
|
|
9
|
+
steps: {
|
|
10
|
+
save_json: {
|
|
11
|
+
robot: '/assembly/savejson',
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
},
|
|
15
|
+
example_code_description: 'Save Assembly result data as JSON:',
|
|
8
16
|
priceFactor: 0,
|
|
9
17
|
queueSlotCount: 5,
|
|
10
18
|
isAllowedForUrlTransform: true,
|
|
@@ -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,
|
|
@@ -28,7 +27,7 @@ export const meta: RobotMetaInput = {
|
|
|
28
27
|
output_factor: 0.8,
|
|
29
28
|
override_lvl1: 'Audio Encoding',
|
|
30
29
|
purpose_sentence:
|
|
31
|
-
'extracts
|
|
30
|
+
'extracts embedded cover artwork from audio files or inserts a new cover image into them. Extracted artwork can be piped into other Steps such as /image/resize. Use `method: "insert"` to embed artwork into audio files like MP3, FLAC, or M4A',
|
|
32
31
|
purpose_verb: 'extract',
|
|
33
32
|
purpose_word: 'extract/insert artwork',
|
|
34
33
|
purpose_words: 'Extract or insert audio artwork',
|
|
@@ -53,11 +52,11 @@ export const robotAudioArtworkInstructionsSchema = robotBase
|
|
|
53
52
|
.merge(robotFFmpegAudio)
|
|
54
53
|
.extend({
|
|
55
54
|
robot: z.literal('/audio/artwork').describe(`
|
|
56
|
-
|
|
55
|
+
This <dfn>Robot</dfn> extracts or inserts cover artwork in audio files.
|
|
57
56
|
|
|
58
|
-
If you need the image in a different format, pipe the result
|
|
57
|
+
For extraction, it uses the image format embedded within the audio file — most often, this is JPEG. If you need the image in a different format, pipe the result into [🤖/image/resize](/docs/robots/image-resize/).
|
|
59
58
|
|
|
60
|
-
|
|
59
|
+
For insertion, provide both an audio file (as \`"audio"\`) and an image file (as \`"image"\`) via the \`use\` parameter, and set \`method\` to \`"insert"\`. The image will be embedded as the cover artwork of the audio file.
|
|
61
60
|
`),
|
|
62
61
|
method: z
|
|
63
62
|
.enum(['extract', 'insert'])
|
|
@@ -13,7 +13,6 @@ import {
|
|
|
13
13
|
} from './_instructions-primitives.ts'
|
|
14
14
|
|
|
15
15
|
export const meta: RobotMetaInput = {
|
|
16
|
-
allowed_for_url_transform: false,
|
|
17
16
|
bytescount: 4,
|
|
18
17
|
discount_factor: 0.25,
|
|
19
18
|
discount_pct: 75,
|
|
@@ -62,7 +61,7 @@ export const meta: RobotMetaInput = {
|
|
|
62
61
|
name: 'AudioConcatRobot',
|
|
63
62
|
priceFactor: 4,
|
|
64
63
|
queueSlotCount: 20,
|
|
65
|
-
isAllowedForUrlTransform:
|
|
64
|
+
isAllowedForUrlTransform: true,
|
|
66
65
|
trackOutputFileSize: true,
|
|
67
66
|
isInternal: false,
|
|
68
67
|
removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
|
|
@@ -12,7 +12,6 @@ import {
|
|
|
12
12
|
} from './_instructions-primitives.ts'
|
|
13
13
|
|
|
14
14
|
export const meta: RobotMetaInput = {
|
|
15
|
-
allowed_for_url_transform: false,
|
|
16
15
|
bytescount: 4,
|
|
17
16
|
discount_factor: 0.25,
|
|
18
17
|
discount_pct: 75,
|
|
@@ -45,7 +44,7 @@ export const meta: RobotMetaInput = {
|
|
|
45
44
|
name: 'AudioEncodeRobot',
|
|
46
45
|
priceFactor: 4,
|
|
47
46
|
queueSlotCount: 20,
|
|
48
|
-
isAllowedForUrlTransform:
|
|
47
|
+
isAllowedForUrlTransform: true,
|
|
49
48
|
trackOutputFileSize: true,
|
|
50
49
|
isInternal: false,
|
|
51
50
|
stage: 'ga',
|
|
@@ -12,7 +12,6 @@ import {
|
|
|
12
12
|
} from './_instructions-primitives.ts'
|
|
13
13
|
|
|
14
14
|
export const meta: RobotMetaInput = {
|
|
15
|
-
allowed_for_url_transform: false,
|
|
16
15
|
bytescount: 4,
|
|
17
16
|
discount_factor: 0.25,
|
|
18
17
|
discount_pct: 75,
|
|
@@ -45,7 +44,7 @@ export const meta: RobotMetaInput = {
|
|
|
45
44
|
name: 'AudioLoopRobot',
|
|
46
45
|
priceFactor: 4,
|
|
47
46
|
queueSlotCount: 20,
|
|
48
|
-
isAllowedForUrlTransform:
|
|
47
|
+
isAllowedForUrlTransform: true,
|
|
49
48
|
trackOutputFileSize: true,
|
|
50
49
|
isInternal: false,
|
|
51
50
|
removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
|
|
@@ -13,7 +13,6 @@ import {
|
|
|
13
13
|
} from './_instructions-primitives.ts'
|
|
14
14
|
|
|
15
15
|
export const meta: RobotMetaInput = {
|
|
16
|
-
allowed_for_url_transform: false,
|
|
17
16
|
bytescount: 4,
|
|
18
17
|
discount_factor: 0.25,
|
|
19
18
|
discount_pct: 75,
|
|
@@ -63,7 +62,7 @@ export const meta: RobotMetaInput = {
|
|
|
63
62
|
name: 'AudioMergeRobot',
|
|
64
63
|
priceFactor: 4,
|
|
65
64
|
queueSlotCount: 20,
|
|
66
|
-
isAllowedForUrlTransform:
|
|
65
|
+
isAllowedForUrlTransform: true,
|
|
67
66
|
trackOutputFileSize: true,
|
|
68
67
|
isInternal: false,
|
|
69
68
|
removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { z } from 'zod'
|
|
2
|
+
|
|
3
|
+
import { stackVersions } from '../stackVersions.ts'
|
|
4
|
+
import type { RobotMetaInput } from './_instructions-primitives.ts'
|
|
5
|
+
import {
|
|
6
|
+
bitrateSchema,
|
|
7
|
+
interpolateRobot,
|
|
8
|
+
robotBase,
|
|
9
|
+
robotFFmpegAudio,
|
|
10
|
+
robotUse,
|
|
11
|
+
sampleRateSchema,
|
|
12
|
+
} from './_instructions-primitives.ts'
|
|
13
|
+
|
|
14
|
+
export const meta: RobotMetaInput = {
|
|
15
|
+
bytescount: 4,
|
|
16
|
+
discount_factor: 0.25,
|
|
17
|
+
discount_pct: 75,
|
|
18
|
+
example_code: {
|
|
19
|
+
steps: {
|
|
20
|
+
split: {
|
|
21
|
+
robot: '/audio/split',
|
|
22
|
+
use: ':original',
|
|
23
|
+
ffmpeg_stack: stackVersions.ffmpeg.recommendedVersion,
|
|
24
|
+
segments: [
|
|
25
|
+
{ from: 0, to: 30 },
|
|
26
|
+
{ from: 60, to: 90 },
|
|
27
|
+
],
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
example_code_description:
|
|
32
|
+
'Split an audio file into two segments, extracting the first 30 seconds and a segment from 1:00 to 1:30:',
|
|
33
|
+
minimum_charge: 0,
|
|
34
|
+
output_factor: 0.8,
|
|
35
|
+
override_lvl1: 'Audio Encoding',
|
|
36
|
+
purpose_sentence:
|
|
37
|
+
'splits an audio file into multiple segments based on an array of from/to durations',
|
|
38
|
+
purpose_verb: 'split',
|
|
39
|
+
purpose_word: 'split',
|
|
40
|
+
purpose_words: 'Split audio',
|
|
41
|
+
service_slug: 'audio-encoding',
|
|
42
|
+
slot_count: 20,
|
|
43
|
+
title: 'Split audio',
|
|
44
|
+
typical_file_size_mb: 3.8,
|
|
45
|
+
typical_file_type: 'audio file',
|
|
46
|
+
uses_tools: ['ffmpeg'],
|
|
47
|
+
name: 'AudioSplitRobot',
|
|
48
|
+
priceFactor: 4,
|
|
49
|
+
queueSlotCount: 20,
|
|
50
|
+
isAllowedForUrlTransform: true,
|
|
51
|
+
trackOutputFileSize: true,
|
|
52
|
+
isInternal: false,
|
|
53
|
+
removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
|
|
54
|
+
stage: 'ga',
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
const segmentSchema = z
|
|
58
|
+
.object({
|
|
59
|
+
from: z
|
|
60
|
+
.union([z.number(), z.string()])
|
|
61
|
+
.describe(
|
|
62
|
+
'Start time of the segment in seconds (e.g. `30`) or as a timecode string (e.g. `"00:00:30.000"`).',
|
|
63
|
+
),
|
|
64
|
+
to: z
|
|
65
|
+
.union([z.number(), z.string()])
|
|
66
|
+
.describe(
|
|
67
|
+
'End time of the segment in seconds (e.g. `60`) or as a timecode string (e.g. `"00:01:00.000"`).',
|
|
68
|
+
),
|
|
69
|
+
})
|
|
70
|
+
.strict()
|
|
71
|
+
|
|
72
|
+
export const robotAudioSplitInstructionsSchema = robotBase
|
|
73
|
+
.merge(robotUse)
|
|
74
|
+
.merge(robotFFmpegAudio)
|
|
75
|
+
.extend({
|
|
76
|
+
result: z
|
|
77
|
+
.boolean()
|
|
78
|
+
.optional()
|
|
79
|
+
.describe('Whether the results of this Step should be present in the Assembly Status JSON'),
|
|
80
|
+
robot: z.literal('/audio/split').describe(`
|
|
81
|
+
Splits an audio file into multiple segments based on an array of from/to durations. Each segment produces a separate output file. This is useful for cutting an audio file into parts, for example to insert ads later via [🤖/audio/concat](/docs/robots/audio-concat/).
|
|
82
|
+
`),
|
|
83
|
+
segments: z
|
|
84
|
+
.array(segmentSchema)
|
|
85
|
+
.min(1)
|
|
86
|
+
.describe(`
|
|
87
|
+
An array of objects, each specifying a segment to extract from the input audio. Each object must have a \`from\` and \`to\` key indicating the start and end time of the segment.
|
|
88
|
+
|
|
89
|
+
Times can be specified as numbers (seconds) or as timecode strings (e.g. \`"00:01:30.000"\`).
|
|
90
|
+
`),
|
|
91
|
+
bitrate: bitrateSchema.optional().describe(`
|
|
92
|
+
Bit rate of the resulting audio file, in bits per second. If not specified will default to the bit rate of the input audio file.
|
|
93
|
+
`),
|
|
94
|
+
sample_rate: sampleRateSchema.optional().describe(`
|
|
95
|
+
Sample rate of the resulting audio file, in Hertz. If not specified will default to the sample rate of the input audio file.
|
|
96
|
+
`),
|
|
97
|
+
})
|
|
98
|
+
.strict()
|
|
99
|
+
|
|
100
|
+
export const robotAudioSplitInstructionsWithHiddenFieldsSchema =
|
|
101
|
+
robotAudioSplitInstructionsSchema.extend({
|
|
102
|
+
result: z
|
|
103
|
+
.union([z.literal('debug'), robotAudioSplitInstructionsSchema.shape.result])
|
|
104
|
+
.optional(),
|
|
105
|
+
})
|
|
106
|
+
|
|
107
|
+
export type RobotAudioSplitInstructions = z.infer<typeof robotAudioSplitInstructionsSchema>
|
|
108
|
+
export type RobotAudioSplitInstructionsWithHiddenFields = z.infer<
|
|
109
|
+
typeof robotAudioSplitInstructionsWithHiddenFieldsSchema
|
|
110
|
+
>
|
|
111
|
+
|
|
112
|
+
export const interpolatableRobotAudioSplitInstructionsSchema = interpolateRobot(
|
|
113
|
+
robotAudioSplitInstructionsSchema,
|
|
114
|
+
)
|
|
115
|
+
export type InterpolatableRobotAudioSplitInstructions =
|
|
116
|
+
InterpolatableRobotAudioSplitInstructionsInput
|
|
117
|
+
|
|
118
|
+
export type InterpolatableRobotAudioSplitInstructionsInput = z.input<
|
|
119
|
+
typeof interpolatableRobotAudioSplitInstructionsSchema
|
|
120
|
+
>
|
|
121
|
+
|
|
122
|
+
export const interpolatableRobotAudioSplitInstructionsWithHiddenFieldsSchema = interpolateRobot(
|
|
123
|
+
robotAudioSplitInstructionsWithHiddenFieldsSchema,
|
|
124
|
+
)
|
|
125
|
+
export type InterpolatableRobotAudioSplitInstructionsWithHiddenFields = z.infer<
|
|
126
|
+
typeof interpolatableRobotAudioSplitInstructionsWithHiddenFieldsSchema
|
|
127
|
+
>
|
|
128
|
+
export type InterpolatableRobotAudioSplitInstructionsWithHiddenFieldsInput = z.input<
|
|
129
|
+
typeof interpolatableRobotAudioSplitInstructionsWithHiddenFieldsSchema
|
|
130
|
+
>
|
|
@@ -10,7 +10,6 @@ import {
|
|
|
10
10
|
} from './_instructions-primitives.ts'
|
|
11
11
|
|
|
12
12
|
export const meta: RobotMetaInput = {
|
|
13
|
-
allowed_for_url_transform: false,
|
|
14
13
|
bytescount: 1,
|
|
15
14
|
discount_factor: 1,
|
|
16
15
|
discount_pct: 0,
|
|
@@ -52,7 +51,7 @@ Here is an example waveform image:
|
|
|
52
51
|
priceFactor: 1,
|
|
53
52
|
queueSlotCount: 20,
|
|
54
53
|
minimumCharge: 1048576,
|
|
55
|
-
isAllowedForUrlTransform:
|
|
54
|
+
isAllowedForUrlTransform: true,
|
|
56
55
|
trackOutputFileSize: true,
|
|
57
56
|
isInternal: false,
|
|
58
57
|
removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
|
|
@@ -74,6 +73,7 @@ Similarly, if you need the output image in a different format, please pipe the r
|
|
|
74
73
|
.default('image')
|
|
75
74
|
.describe(`
|
|
76
75
|
The format of the result file. Can be \`"image"\` or \`"json"\`. If \`"image"\` is supplied, a PNG image will be created, otherwise a JSON file.
|
|
76
|
+
When \`style\` is \`"spectrogram"\`, only \`"image"\` is supported.
|
|
77
77
|
`),
|
|
78
78
|
width: z
|
|
79
79
|
.number()
|
|
@@ -110,15 +110,50 @@ The color used in the outer parts of the gradient. The format is "rrggbbaa" (red
|
|
|
110
110
|
|
|
111
111
|
const styleSchema = z.preprocess(
|
|
112
112
|
(val) => {
|
|
113
|
-
// Backwards compatibility: historically this robot used numeric styles 0/1
|
|
114
|
-
// The new API is `style: "v0" | "v1"
|
|
113
|
+
// Backwards compatibility: historically this robot used numeric styles 0/1.
|
|
114
|
+
// The new API is `style: "v0" | "v1" | "spectrogram"`.
|
|
115
115
|
if (val === 'v1' || val === 1 || val === '1') return 'v1'
|
|
116
116
|
if (val === 'v0' || val === 0 || val === '0') return 'v0'
|
|
117
|
+
if (val === 'spectrogram') return 'spectrogram'
|
|
117
118
|
return val
|
|
118
119
|
},
|
|
119
|
-
z.enum(['v0', 'v1']).default('v0'),
|
|
120
|
+
z.enum(['v0', 'v1', 'spectrogram']).default('v0'),
|
|
120
121
|
)
|
|
121
122
|
|
|
123
|
+
// Color maps for spectrogram visualization
|
|
124
|
+
export type SpectrogramColorMap =
|
|
125
|
+
| 'viridis'
|
|
126
|
+
| 'plasma'
|
|
127
|
+
| 'magma'
|
|
128
|
+
| 'cividis'
|
|
129
|
+
| 'cool'
|
|
130
|
+
| 'rainbow'
|
|
131
|
+
| 'moreland'
|
|
132
|
+
| 'nebulae'
|
|
133
|
+
| 'fire'
|
|
134
|
+
| 'fiery'
|
|
135
|
+
| 'fruit'
|
|
136
|
+
| 'green'
|
|
137
|
+
| 'terrain'
|
|
138
|
+
| 'gray'
|
|
139
|
+
|
|
140
|
+
export const spectrogramColorMaps = [
|
|
141
|
+
'viridis',
|
|
142
|
+
'plasma',
|
|
143
|
+
'magma',
|
|
144
|
+
'cividis',
|
|
145
|
+
'cool',
|
|
146
|
+
'rainbow',
|
|
147
|
+
'moreland',
|
|
148
|
+
'nebulae',
|
|
149
|
+
'fire',
|
|
150
|
+
'fiery',
|
|
151
|
+
'fruit',
|
|
152
|
+
'green',
|
|
153
|
+
'terrain',
|
|
154
|
+
'gray',
|
|
155
|
+
] as const satisfies readonly SpectrogramColorMap[]
|
|
156
|
+
|
|
122
157
|
// Unified schema: all parameters exist for both styles, but v1-only parameters only apply when
|
|
123
158
|
// `style` is `v1` (they are accepted for v0 but have no effect).
|
|
124
159
|
export const robotAudioWaveformInstructionsSchema = robotAudioWaveformInstructionsBaseSchema
|
|
@@ -128,8 +163,9 @@ Waveform style version.
|
|
|
128
163
|
|
|
129
164
|
- \`"v0"\`: Legacy waveform generation (default).
|
|
130
165
|
- \`"v1"\`: Advanced waveform generation with additional parameters.
|
|
166
|
+
- \`"spectrogram"\`: Spectrogram visualization showing frequency content over time.
|
|
131
167
|
|
|
132
|
-
For backwards compatibility, numeric values \`0
|
|
168
|
+
For backwards compatibility, numeric values \`0\` and \`1\` are also accepted and mapped to \`"v0"\` and \`"v1"\`.
|
|
133
169
|
`),
|
|
134
170
|
|
|
135
171
|
// v1-only parameters (accepted for v0 but have no effect)
|
|
@@ -241,6 +277,54 @@ Available when style is \`"v1"\`. Amplitude scale factor.
|
|
|
241
277
|
.optional()
|
|
242
278
|
.describe(`
|
|
243
279
|
Available when style is \`"v1"\`. PNG compression level: 0 (none) to 9 (best), or -1 (default). Only applicable when format is "image".
|
|
280
|
+
`),
|
|
281
|
+
|
|
282
|
+
// Spectrogram-specific parameters (only apply when style is "spectrogram")
|
|
283
|
+
color_map: z
|
|
284
|
+
.enum(spectrogramColorMaps)
|
|
285
|
+
.optional()
|
|
286
|
+
.describe(`
|
|
287
|
+
Available when style is \`"spectrogram"\`. Color scheme for the spectrogram visualization. Defaults to \`"viridis"\`.
|
|
288
|
+
`),
|
|
289
|
+
frequency_scale: z
|
|
290
|
+
.enum(['linear', 'logarithmic'])
|
|
291
|
+
.optional()
|
|
292
|
+
.describe(`
|
|
293
|
+
Available when style is \`"spectrogram"\`. Frequency scale for the spectrogram. \`"linear"\` shows frequencies evenly spaced, \`"logarithmic"\` emphasizes lower frequencies. Defaults to \`"logarithmic"\`.
|
|
294
|
+
`),
|
|
295
|
+
frequency_min: z
|
|
296
|
+
.number()
|
|
297
|
+
.min(0)
|
|
298
|
+
.optional()
|
|
299
|
+
.describe(`
|
|
300
|
+
Available when style is \`"spectrogram"\`. Minimum frequency in Hz to display. Defaults to \`0\`.
|
|
301
|
+
`),
|
|
302
|
+
frequency_max: z
|
|
303
|
+
.number()
|
|
304
|
+
.min(1)
|
|
305
|
+
.optional()
|
|
306
|
+
.describe(`
|
|
307
|
+
Available when style is \`"spectrogram"\`. Maximum frequency in Hz to display. Defaults to half the sample rate (Nyquist frequency).
|
|
308
|
+
`),
|
|
309
|
+
legend: z
|
|
310
|
+
.boolean()
|
|
311
|
+
.optional()
|
|
312
|
+
.describe(`
|
|
313
|
+
Available when style is \`"spectrogram"\`. Whether to include a legend showing the frequency and time scales. Defaults to \`false\`.
|
|
314
|
+
`),
|
|
315
|
+
gain: z
|
|
316
|
+
.number()
|
|
317
|
+
.min(0)
|
|
318
|
+
.max(128)
|
|
319
|
+
.optional()
|
|
320
|
+
.describe(`
|
|
321
|
+
Available when style is \`"spectrogram"\`. Linear gain factor for spectrogram intensity. Defaults to \`1\`.
|
|
322
|
+
`),
|
|
323
|
+
orientation: z
|
|
324
|
+
.enum(['vertical', 'horizontal'])
|
|
325
|
+
.optional()
|
|
326
|
+
.describe(`
|
|
327
|
+
Available when style is \`"spectrogram"\`. Orientation of the spectrogram. \`"horizontal"\` shows time on the x-axis (default), \`"vertical"\` shows time on the y-axis.
|
|
244
328
|
`),
|
|
245
329
|
})
|
|
246
330
|
.strict()
|
|
@@ -4,7 +4,6 @@ import type { RobotMetaInput } from './_instructions-primitives.ts'
|
|
|
4
4
|
import { azureBase, interpolateRobot, robotBase, robotUse } from './_instructions-primitives.ts'
|
|
5
5
|
|
|
6
6
|
export const meta: RobotMetaInput = {
|
|
7
|
-
allowed_for_url_transform: true,
|
|
8
7
|
bytescount: 6,
|
|
9
8
|
discount_factor: 0.15000150001500018,
|
|
10
9
|
discount_pct: 84.99984999849998,
|
|
@@ -4,7 +4,6 @@ import type { RobotMetaInput } from './_instructions-primitives.ts'
|
|
|
4
4
|
import { backblazeBase, interpolateRobot, robotBase, robotUse } from './_instructions-primitives.ts'
|
|
5
5
|
|
|
6
6
|
export const meta: RobotMetaInput = {
|
|
7
|
-
allowed_for_url_transform: true,
|
|
8
7
|
bytescount: 6,
|
|
9
8
|
discount_factor: 0.15000150001500018,
|
|
10
9
|
discount_pct: 84.99984999849998,
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { z } from 'zod'
|
|
2
|
+
|
|
3
|
+
import type { RobotMetaInput } from './_instructions-primitives.ts'
|
|
4
|
+
import {
|
|
5
|
+
boxBase,
|
|
6
|
+
interpolateRobot,
|
|
7
|
+
path,
|
|
8
|
+
robotBase,
|
|
9
|
+
robotImport,
|
|
10
|
+
} from './_instructions-primitives.ts'
|
|
11
|
+
|
|
12
|
+
export const meta: RobotMetaInput = {
|
|
13
|
+
bytescount: 10,
|
|
14
|
+
discount_factor: 0.1,
|
|
15
|
+
discount_pct: 90,
|
|
16
|
+
example_code: {
|
|
17
|
+
steps: {
|
|
18
|
+
imported: {
|
|
19
|
+
robot: '/box/import',
|
|
20
|
+
credentials: 'YOUR_BOX_CREDENTIALS',
|
|
21
|
+
path: 'path/to/files/',
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
example_code_description:
|
|
26
|
+
'Import files from the `path/to/files` directory and its subdirectories:',
|
|
27
|
+
has_small_icon: true,
|
|
28
|
+
minimum_charge: 0,
|
|
29
|
+
output_factor: 1,
|
|
30
|
+
override_lvl1: 'File Importing',
|
|
31
|
+
purpose_sentence: 'imports whole directories of files from your Box',
|
|
32
|
+
purpose_verb: 'import',
|
|
33
|
+
purpose_word: 'Box',
|
|
34
|
+
purpose_words: 'Import files from Box',
|
|
35
|
+
requires_credentials: true,
|
|
36
|
+
service_slug: 'file-importing',
|
|
37
|
+
slot_count: 20,
|
|
38
|
+
title: 'Import files from Box',
|
|
39
|
+
typical_file_size_mb: 1.2,
|
|
40
|
+
typical_file_type: 'file',
|
|
41
|
+
name: 'BoxImportRobot',
|
|
42
|
+
priceFactor: 6.6666,
|
|
43
|
+
queueSlotCount: 20,
|
|
44
|
+
isAllowedForUrlTransform: true,
|
|
45
|
+
trackOutputFileSize: false,
|
|
46
|
+
isInternal: false,
|
|
47
|
+
removeJobResultFilesFromDiskRightAfterStoringOnS3: true,
|
|
48
|
+
stage: 'ga',
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export const robotBoxImportInstructionsSchema = robotBase
|
|
52
|
+
.merge(robotImport)
|
|
53
|
+
.merge(boxBase)
|
|
54
|
+
.extend({
|
|
55
|
+
robot: z.literal('/box/import'),
|
|
56
|
+
path: path.describe(`
|
|
57
|
+
The path in your Box to the specific file or directory. If the path points to a file, only this file will be imported. For example: \`images/avatar.jpg\`.
|
|
58
|
+
|
|
59
|
+
If it points to a directory, indicated by a trailing slash (\`/\`), then all files that are descendants of this directory are recursively imported. For example: \`images/\`.
|
|
60
|
+
|
|
61
|
+
If you want to import all files from the root directory, please use \`/\` as the value here.
|
|
62
|
+
|
|
63
|
+
You can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.
|
|
64
|
+
`),
|
|
65
|
+
})
|
|
66
|
+
.strict()
|
|
67
|
+
|
|
68
|
+
export const robotBoxImportInstructionsWithHiddenFieldsSchema =
|
|
69
|
+
robotBoxImportInstructionsSchema.extend({
|
|
70
|
+
result: z.union([z.literal('debug'), robotBoxImportInstructionsSchema.shape.result]).optional(),
|
|
71
|
+
access_token: z.string().optional(),
|
|
72
|
+
key_file_contents: z.string().optional(),
|
|
73
|
+
})
|
|
74
|
+
|
|
75
|
+
export type RobotBoxImportInstructions = z.infer<typeof robotBoxImportInstructionsSchema>
|
|
76
|
+
export type RobotBoxImportInstructionsWithHiddenFields = z.infer<
|
|
77
|
+
typeof robotBoxImportInstructionsWithHiddenFieldsSchema
|
|
78
|
+
>
|
|
79
|
+
|
|
80
|
+
export const interpolatableRobotBoxImportInstructionsSchema = interpolateRobot(
|
|
81
|
+
robotBoxImportInstructionsSchema,
|
|
82
|
+
)
|
|
83
|
+
export type InterpolatableRobotBoxImportInstructions = InterpolatableRobotBoxImportInstructionsInput
|
|
84
|
+
|
|
85
|
+
export type InterpolatableRobotBoxImportInstructionsInput = z.input<
|
|
86
|
+
typeof interpolatableRobotBoxImportInstructionsSchema
|
|
87
|
+
>
|
|
88
|
+
|
|
89
|
+
export const interpolatableRobotBoxImportInstructionsWithHiddenFieldsSchema = interpolateRobot(
|
|
90
|
+
robotBoxImportInstructionsWithHiddenFieldsSchema,
|
|
91
|
+
)
|
|
92
|
+
export type InterpolatableRobotBoxImportInstructionsWithHiddenFields = z.infer<
|
|
93
|
+
typeof interpolatableRobotBoxImportInstructionsWithHiddenFieldsSchema
|
|
94
|
+
>
|
|
95
|
+
export type InterpolatableRobotBoxImportInstructionsWithHiddenFieldsInput = z.input<
|
|
96
|
+
typeof interpolatableRobotBoxImportInstructionsWithHiddenFieldsSchema
|
|
97
|
+
>
|