transloadit 4.1.2 → 4.1.3
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/dist/alphalib/mcache.d.ts +2 -2
- package/dist/alphalib/mcache.d.ts.map +1 -1
- package/dist/alphalib/mcache.js.map +1 -1
- package/dist/alphalib/types/assembliesGet.d.ts +4 -4
- package/dist/alphalib/types/assemblyReplay.d.ts +392 -178
- package/dist/alphalib/types/assemblyReplay.d.ts.map +1 -1
- package/dist/alphalib/types/assemblyReplayNotification.d.ts +392 -178
- package/dist/alphalib/types/assemblyReplayNotification.d.ts.map +1 -1
- package/dist/alphalib/types/assemblyStatus.d.ts +102 -102
- package/dist/alphalib/types/bill.d.ts +4 -4
- package/dist/alphalib/types/robots/_index.d.ts +3277 -932
- package/dist/alphalib/types/robots/_index.d.ts.map +1 -1
- package/dist/alphalib/types/robots/_index.js +4 -0
- package/dist/alphalib/types/robots/_index.js.map +1 -1
- package/dist/alphalib/types/robots/_instructions-primitives.d.ts +27 -16
- package/dist/alphalib/types/robots/_instructions-primitives.d.ts.map +1 -1
- package/dist/alphalib/types/robots/_instructions-primitives.js +1 -0
- package/dist/alphalib/types/robots/_instructions-primitives.js.map +1 -1
- package/dist/alphalib/types/robots/ai-chat.d.ts +2096 -0
- package/dist/alphalib/types/robots/ai-chat.d.ts.map +1 -0
- package/dist/alphalib/types/robots/ai-chat.js +223 -0
- package/dist/alphalib/types/robots/ai-chat.js.map +1 -0
- package/dist/alphalib/types/robots/assembly-savejson.d.ts +4 -4
- package/dist/alphalib/types/robots/audio-artwork.d.ts +16 -16
- package/dist/alphalib/types/robots/audio-concat.d.ts +16 -16
- package/dist/alphalib/types/robots/audio-encode.d.ts +16 -16
- package/dist/alphalib/types/robots/audio-loop.d.ts +16 -16
- package/dist/alphalib/types/robots/audio-merge.d.ts +16 -16
- package/dist/alphalib/types/robots/audio-waveform.d.ts +226 -21
- package/dist/alphalib/types/robots/audio-waveform.d.ts.map +1 -1
- package/dist/alphalib/types/robots/audio-waveform.js +134 -7
- package/dist/alphalib/types/robots/audio-waveform.js.map +1 -1
- package/dist/alphalib/types/robots/azure-import.d.ts +8 -8
- package/dist/alphalib/types/robots/azure-store.d.ts +8 -8
- package/dist/alphalib/types/robots/backblaze-import.d.ts +8 -8
- package/dist/alphalib/types/robots/backblaze-store.d.ts +8 -8
- package/dist/alphalib/types/robots/cloudfiles-import.d.ts +8 -8
- package/dist/alphalib/types/robots/cloudfiles-store.d.ts +8 -8
- package/dist/alphalib/types/robots/cloudflare-import.d.ts +8 -8
- package/dist/alphalib/types/robots/cloudflare-store.d.ts +8 -8
- package/dist/alphalib/types/robots/digitalocean-import.d.ts +8 -8
- package/dist/alphalib/types/robots/digitalocean-store.d.ts +8 -8
- package/dist/alphalib/types/robots/document-autorotate.d.ts +8 -8
- package/dist/alphalib/types/robots/document-convert.d.ts +8 -8
- package/dist/alphalib/types/robots/document-merge.d.ts +8 -8
- package/dist/alphalib/types/robots/document-ocr.d.ts +8 -8
- package/dist/alphalib/types/robots/document-split.d.ts +8 -8
- package/dist/alphalib/types/robots/document-thumbs.d.ts +8 -8
- package/dist/alphalib/types/robots/dropbox-import.d.ts +8 -8
- package/dist/alphalib/types/robots/dropbox-store.d.ts +8 -8
- package/dist/alphalib/types/robots/edgly-deliver.d.ts +8 -8
- package/dist/alphalib/types/robots/file-compress.d.ts +12 -12
- package/dist/alphalib/types/robots/file-decompress.d.ts +8 -8
- package/dist/alphalib/types/robots/file-filter.d.ts +12 -12
- package/dist/alphalib/types/robots/file-hash.d.ts +8 -8
- package/dist/alphalib/types/robots/file-preview.d.ts +8 -8
- package/dist/alphalib/types/robots/file-read.d.ts +8 -8
- package/dist/alphalib/types/robots/file-serve.d.ts +8 -8
- package/dist/alphalib/types/robots/file-verify.d.ts +8 -8
- package/dist/alphalib/types/robots/file-virusscan.d.ts +8 -8
- package/dist/alphalib/types/robots/file-watermark.d.ts +8 -8
- package/dist/alphalib/types/robots/ftp-import.d.ts +8 -8
- package/dist/alphalib/types/robots/ftp-store.d.ts +8 -8
- package/dist/alphalib/types/robots/google-import.d.ts +8 -8
- package/dist/alphalib/types/robots/google-store.d.ts +8 -8
- package/dist/alphalib/types/robots/html-convert.d.ts +8 -8
- package/dist/alphalib/types/robots/http-import.d.ts +8 -8
- package/dist/alphalib/types/robots/image-bgremove.d.ts +20 -8
- package/dist/alphalib/types/robots/image-bgremove.d.ts.map +1 -1
- package/dist/alphalib/types/robots/image-bgremove.js +4 -0
- package/dist/alphalib/types/robots/image-bgremove.js.map +1 -1
- package/dist/alphalib/types/robots/image-describe.d.ts +8 -8
- package/dist/alphalib/types/robots/image-facedetect.d.ts +8 -8
- package/dist/alphalib/types/robots/image-generate.d.ts +32 -29
- package/dist/alphalib/types/robots/image-generate.d.ts.map +1 -1
- package/dist/alphalib/types/robots/image-generate.js +6 -3
- package/dist/alphalib/types/robots/image-generate.js.map +1 -1
- package/dist/alphalib/types/robots/image-merge.d.ts +8 -8
- package/dist/alphalib/types/robots/image-ocr.d.ts +8 -8
- package/dist/alphalib/types/robots/image-optimize.d.ts +16 -16
- package/dist/alphalib/types/robots/image-resize.d.ts +16 -16
- package/dist/alphalib/types/robots/meta-read.d.ts +8 -8
- package/dist/alphalib/types/robots/meta-write.d.ts +20 -24
- package/dist/alphalib/types/robots/meta-write.d.ts.map +1 -1
- package/dist/alphalib/types/robots/meta-write.js +1 -2
- package/dist/alphalib/types/robots/meta-write.js.map +1 -1
- package/dist/alphalib/types/robots/minio-import.d.ts +8 -8
- package/dist/alphalib/types/robots/minio-store.d.ts +8 -8
- package/dist/alphalib/types/robots/progress-simulate.d.ts +4 -4
- package/dist/alphalib/types/robots/s3-import.d.ts +16 -16
- package/dist/alphalib/types/robots/s3-store.d.ts +12 -12
- package/dist/alphalib/types/robots/script-run.d.ts +8 -8
- package/dist/alphalib/types/robots/sftp-import.d.ts +8 -8
- package/dist/alphalib/types/robots/sftp-store.d.ts +8 -8
- package/dist/alphalib/types/robots/speech-transcribe.d.ts +8 -8
- package/dist/alphalib/types/robots/supabase-import.d.ts +8 -8
- package/dist/alphalib/types/robots/supabase-store.d.ts +8 -8
- package/dist/alphalib/types/robots/swift-import.d.ts +8 -8
- package/dist/alphalib/types/robots/swift-store.d.ts +8 -8
- package/dist/alphalib/types/robots/text-speak.d.ts +8 -8
- package/dist/alphalib/types/robots/text-translate.d.ts +16 -16
- package/dist/alphalib/types/robots/tigris-import.d.ts +8 -8
- package/dist/alphalib/types/robots/tigris-store.d.ts +8 -8
- package/dist/alphalib/types/robots/tlcdn-deliver.d.ts +8 -8
- package/dist/alphalib/types/robots/tus-store.d.ts +8 -8
- package/dist/alphalib/types/robots/upload-handle.d.ts +8 -8
- package/dist/alphalib/types/robots/video-adaptive.d.ts +16 -16
- package/dist/alphalib/types/robots/video-concat.d.ts +16 -16
- package/dist/alphalib/types/robots/video-encode.d.ts +16 -16
- package/dist/alphalib/types/robots/video-merge.d.ts +16 -16
- package/dist/alphalib/types/robots/video-ondemand.d.ts +20 -20
- package/dist/alphalib/types/robots/video-subtitle.d.ts +24 -24
- package/dist/alphalib/types/robots/video-thumbs.d.ts +8 -8
- package/dist/alphalib/types/robots/vimeo-import.d.ts +8 -8
- package/dist/alphalib/types/robots/vimeo-store.d.ts +8 -8
- package/dist/alphalib/types/robots/wasabi-import.d.ts +8 -8
- package/dist/alphalib/types/robots/wasabi-store.d.ts +8 -8
- package/dist/alphalib/types/robots/youtube-store.d.ts +12 -12
- package/dist/alphalib/types/template.d.ts +6183 -2096
- package/dist/alphalib/types/template.d.ts.map +1 -1
- package/dist/alphalib/types/templateCredential.d.ts +11 -11
- 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/cli/OutputCtl.d.ts +2 -1
- package/dist/cli/OutputCtl.d.ts.map +1 -1
- package/dist/cli/OutputCtl.js +1 -1
- package/dist/cli/OutputCtl.js.map +1 -1
- package/dist/cli/commands/BaseCommand.d.ts +2 -1
- package/dist/cli/commands/BaseCommand.d.ts.map +1 -1
- package/dist/cli/commands/BaseCommand.js +1 -1
- package/dist/cli/commands/BaseCommand.js.map +1 -1
- package/dist/cli/commands/assemblies.d.ts +1 -1
- package/dist/cli/commands/assemblies.d.ts.map +1 -1
- package/dist/cli/commands/notifications.d.ts +0 -7
- package/dist/cli/commands/notifications.d.ts.map +1 -1
- package/dist/cli/commands/notifications.js +1 -1
- package/dist/cli/commands/notifications.js.map +1 -1
- package/dist/cli/commands/templates.d.ts +1 -9
- package/dist/cli/commands/templates.d.ts.map +1 -1
- package/dist/cli/commands/templates.js +1 -1
- package/dist/cli/commands/templates.js.map +1 -1
- package/dist/cli/helpers.d.ts +2 -2
- package/dist/cli/helpers.d.ts.map +1 -1
- package/dist/cli/helpers.js.map +1 -1
- package/dist/cli/types.d.ts +3 -77
- package/dist/cli/types.d.ts.map +1 -1
- package/dist/cli/types.js +2 -17
- package/dist/cli/types.js.map +1 -1
- package/package.json +16 -22
- package/src/alphalib/mcache.ts +4 -4
- package/src/alphalib/types/robots/_index.ts +14 -1
- package/src/alphalib/types/robots/_instructions-primitives.ts +21 -15
- package/src/alphalib/types/robots/ai-chat.ts +278 -0
- package/src/alphalib/types/robots/audio-waveform.ts +142 -9
- package/src/alphalib/types/robots/image-bgremove.ts +6 -0
- package/src/alphalib/types/robots/image-generate.ts +6 -3
- package/src/alphalib/types/robots/meta-write.ts +1 -2
- package/src/alphalib/types/templateCredential.ts +1 -0
- package/src/cli/OutputCtl.ts +1 -1
- package/src/cli/commands/BaseCommand.ts +1 -1
- package/src/cli/commands/assemblies.ts +1 -1
- package/src/cli/commands/notifications.ts +2 -2
- package/src/cli/commands/templates.ts +3 -3
- package/src/cli/helpers.ts +3 -3
- package/src/cli/types.ts +2 -115
- package/CHANGELOG.md +0 -257
|
@@ -34,10 +34,13 @@ export const robotImageGenerateInstructionsSchema = robotBase
|
|
|
34
34
|
.merge(robotUse)
|
|
35
35
|
.extend({
|
|
36
36
|
robot: z.literal('/image/generate'),
|
|
37
|
-
model: z
|
|
37
|
+
model: z
|
|
38
|
+
.string()
|
|
39
|
+
.optional()
|
|
40
|
+
.describe('The AI model to use for image generation. Defaults to google/nano-banana.'),
|
|
38
41
|
prompt: z.string().describe('The prompt describing the desired image content.'),
|
|
39
42
|
format: z
|
|
40
|
-
.enum(['jpeg', 'png', 'gif', 'webp', 'svg'])
|
|
43
|
+
.enum(['jpeg', 'jpg', 'png', 'gif', 'webp', 'svg'])
|
|
41
44
|
.optional()
|
|
42
45
|
.describe('Format of the generated image.'),
|
|
43
46
|
seed: z.number().optional().describe('Seed for the random number generator.'),
|
|
@@ -69,7 +72,7 @@ export type RobotImageGenerateInstructionsWithHiddenFields = z.infer<
|
|
|
69
72
|
>
|
|
70
73
|
|
|
71
74
|
export const interpolatableRobotImageGenerateInstructionsSchema = interpolateRobot(
|
|
72
|
-
|
|
75
|
+
robotImageGenerateInstructionsWithHiddenFieldsSchema,
|
|
73
76
|
)
|
|
74
77
|
export type InterpolatableRobotImageGenerateInstructions =
|
|
75
78
|
InterpolatableRobotImageGenerateInstructionsInput
|
|
@@ -53,8 +53,7 @@ export const robotMetaWriteInstructionsSchema = robotBase
|
|
|
53
53
|
**Note:** This <dfn>Robot</dfn> currently accepts images, videos and audio files.
|
|
54
54
|
`),
|
|
55
55
|
data_to_write: z
|
|
56
|
-
.
|
|
57
|
-
.passthrough()
|
|
56
|
+
.record(z.unknown())
|
|
58
57
|
.default({})
|
|
59
58
|
.describe(`
|
|
60
59
|
A key/value map defining the metadata to write into the file.
|
package/src/cli/OutputCtl.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Log levels following syslog severity (https://en.wikipedia.org/wiki/Syslog#Severity_level)
|
|
3
3
|
* Lower numbers = more severe, higher numbers = more verbose
|
|
4
4
|
*/
|
|
5
|
-
|
|
5
|
+
const LOG_LEVEL = {
|
|
6
6
|
ERR: 3, // Error conditions
|
|
7
7
|
WARN: 4, // Warning conditions
|
|
8
8
|
NOTICE: 5, // Normal but significant (default)
|
|
@@ -6,7 +6,7 @@ import { getEnvCredentials } from '../helpers.ts'
|
|
|
6
6
|
import type { IOutputCtl } from '../OutputCtl.ts'
|
|
7
7
|
import OutputCtl, { LOG_LEVEL_DEFAULT, LOG_LEVEL_NAMES, parseLogLevel } from '../OutputCtl.ts'
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
abstract class BaseCommand extends Command {
|
|
10
10
|
logLevelOption = Option.String('-l,--log-level', {
|
|
11
11
|
description: `Log level: ${LOG_LEVEL_NAMES.join(', ')} or 3-8 (default: notice)`,
|
|
12
12
|
})
|
|
@@ -7,12 +7,12 @@ import { AuthenticatedCommand } from './BaseCommand.ts'
|
|
|
7
7
|
|
|
8
8
|
// --- Types and business logic ---
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
interface NotificationsReplayOptions {
|
|
11
11
|
notify_url?: string
|
|
12
12
|
assemblies: string[]
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
async function replay(
|
|
16
16
|
output: IOutputCtl,
|
|
17
17
|
client: Transloadit,
|
|
18
18
|
{ notify_url, assemblies }: NotificationsReplayOptions,
|
|
@@ -33,11 +33,11 @@ export interface TemplateModifyOptions {
|
|
|
33
33
|
file: string
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
interface TemplateDeleteOptions {
|
|
37
37
|
templates: string[]
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
interface TemplateListOptions {
|
|
41
41
|
before?: string
|
|
42
42
|
after?: string
|
|
43
43
|
order?: 'asc' | 'desc'
|
|
@@ -162,7 +162,7 @@ const TemplateIdSchema = z.object({
|
|
|
162
162
|
id: z.string(),
|
|
163
163
|
})
|
|
164
164
|
|
|
165
|
-
|
|
165
|
+
function list(
|
|
166
166
|
output: IOutputCtl,
|
|
167
167
|
client: Transloadit,
|
|
168
168
|
{ before, after, order, sort, fields }: TemplateListOptions,
|
package/src/cli/helpers.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import fs from 'node:fs'
|
|
2
2
|
import type { Readable } from 'node:stream'
|
|
3
|
-
import type { APIError } from './types.ts'
|
|
4
3
|
import { isAPIError } from './types.ts'
|
|
5
4
|
|
|
6
5
|
export function getEnvCredentials(): { authKey: string; authSecret: string } | null {
|
|
@@ -35,8 +34,9 @@ export function formatAPIError(err: unknown): string {
|
|
|
35
34
|
return String(err)
|
|
36
35
|
}
|
|
37
36
|
|
|
38
|
-
// Re-export APIError type for
|
|
39
|
-
|
|
37
|
+
// Re-export APIError type for CLI consumers relying on deep imports.
|
|
38
|
+
/** @public */
|
|
39
|
+
export type { APIError } from './types.ts'
|
|
40
40
|
|
|
41
41
|
export function zip<A, B>(listA: A[], listB: B[]): [A, B][]
|
|
42
42
|
export function zip<T>(...lists: T[][]): T[][]
|
package/src/cli/types.ts
CHANGED
|
@@ -1,23 +1,15 @@
|
|
|
1
1
|
import { z } from 'zod'
|
|
2
2
|
import type { Steps } from '../alphalib/types/template.ts'
|
|
3
3
|
import { optionalStepsSchema } from '../alphalib/types/template.ts'
|
|
4
|
-
import type { BillResponse, ListedTemplate, TemplateResponse } from '../apiTypes.ts'
|
|
5
|
-
import type { AssemblyStatus, Transloadit } from '../Transloadit.ts'
|
|
6
|
-
import type { IOutputCtl } from './OutputCtl.ts'
|
|
7
|
-
|
|
8
|
-
// Re-export transloadit types for CLI use
|
|
9
|
-
export type { AssemblyStatus, BillResponse, ListedTemplate, TemplateResponse }
|
|
10
|
-
export type { Transloadit }
|
|
11
|
-
export type { CreateAssemblyOptions } from '../Transloadit.ts'
|
|
12
4
|
|
|
13
5
|
// Zod schemas for runtime validation
|
|
14
|
-
|
|
6
|
+
const APIErrorSchema = z.object({
|
|
15
7
|
error: z.string(),
|
|
16
8
|
message: z.string(),
|
|
17
9
|
})
|
|
18
10
|
export type APIError = z.infer<typeof APIErrorSchema>
|
|
19
11
|
|
|
20
|
-
|
|
12
|
+
const TransloaditAPIErrorSchema = z.object({
|
|
21
13
|
error: z.string().optional(),
|
|
22
14
|
message: z.string(),
|
|
23
15
|
code: z.string().optional(),
|
|
@@ -54,98 +46,6 @@ export interface TemplateFile {
|
|
|
54
46
|
data: TemplateFileData
|
|
55
47
|
}
|
|
56
48
|
|
|
57
|
-
// Template list item (from API)
|
|
58
|
-
export interface TemplateListItem {
|
|
59
|
-
id: string
|
|
60
|
-
modified: string
|
|
61
|
-
name?: string
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
// CLI Invocation types
|
|
65
|
-
export interface BaseInvocation {
|
|
66
|
-
error?: boolean
|
|
67
|
-
message?: string
|
|
68
|
-
mode: string
|
|
69
|
-
action?: string
|
|
70
|
-
logLevel?: number
|
|
71
|
-
jsonMode?: boolean
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
export interface AssemblyInvocation extends BaseInvocation {
|
|
75
|
-
mode: 'assemblies'
|
|
76
|
-
action?: 'create' | 'get' | 'list' | 'delete' | 'replay'
|
|
77
|
-
inputs: string[]
|
|
78
|
-
output?: string
|
|
79
|
-
recursive?: boolean
|
|
80
|
-
watch?: boolean
|
|
81
|
-
del?: boolean
|
|
82
|
-
reprocessStale?: boolean
|
|
83
|
-
steps?: string
|
|
84
|
-
template?: string
|
|
85
|
-
fields?: Record<string, string>
|
|
86
|
-
assemblies?: string[]
|
|
87
|
-
before?: string
|
|
88
|
-
after?: string
|
|
89
|
-
keywords?: string[]
|
|
90
|
-
notify_url?: string
|
|
91
|
-
reparse?: boolean
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
export interface TemplateInvocation extends BaseInvocation {
|
|
95
|
-
mode: 'templates'
|
|
96
|
-
action?: 'create' | 'get' | 'list' | 'delete' | 'modify' | 'sync'
|
|
97
|
-
templates?: string[]
|
|
98
|
-
template?: string
|
|
99
|
-
name?: string
|
|
100
|
-
file?: string
|
|
101
|
-
files?: string[]
|
|
102
|
-
before?: string
|
|
103
|
-
after?: string
|
|
104
|
-
order?: 'asc' | 'desc'
|
|
105
|
-
sort?: string
|
|
106
|
-
fields?: string[]
|
|
107
|
-
recursive?: boolean
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
export interface BillInvocation extends BaseInvocation {
|
|
111
|
-
mode: 'bills'
|
|
112
|
-
action?: 'get'
|
|
113
|
-
months: string[]
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
export interface NotificationInvocation extends BaseInvocation {
|
|
117
|
-
mode: 'assembly-notifications'
|
|
118
|
-
action?: 'list' | 'replay'
|
|
119
|
-
assemblies?: string[]
|
|
120
|
-
notify_url?: string
|
|
121
|
-
type?: string
|
|
122
|
-
assembly_id?: string
|
|
123
|
-
pagesize?: number
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
export interface HelpInvocation extends BaseInvocation {
|
|
127
|
-
mode: 'help' | 'version' | 'register'
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
export type Invocation =
|
|
131
|
-
| AssemblyInvocation
|
|
132
|
-
| TemplateInvocation
|
|
133
|
-
| BillInvocation
|
|
134
|
-
| NotificationInvocation
|
|
135
|
-
| HelpInvocation
|
|
136
|
-
|
|
137
|
-
// Command handler type
|
|
138
|
-
export type CommandHandler<T extends BaseInvocation = BaseInvocation> = (
|
|
139
|
-
output: IOutputCtl,
|
|
140
|
-
client: Transloadit | undefined,
|
|
141
|
-
invocation: T,
|
|
142
|
-
) => void | Promise<void>
|
|
143
|
-
|
|
144
|
-
// Type guard for Error
|
|
145
|
-
export function isError(value: unknown): value is Error {
|
|
146
|
-
return value instanceof Error
|
|
147
|
-
}
|
|
148
|
-
|
|
149
49
|
// Helper to ensure error is Error type
|
|
150
50
|
export function ensureError(value: unknown): Error {
|
|
151
51
|
if (value instanceof Error) {
|
|
@@ -168,16 +68,3 @@ export function isTransloaditAPIError(value: unknown): value is TransloaditAPIEr
|
|
|
168
68
|
export function isErrnoException(value: unknown): value is NodeJS.ErrnoException {
|
|
169
69
|
return value instanceof Error && 'code' in value
|
|
170
70
|
}
|
|
171
|
-
|
|
172
|
-
// Safe array access helper
|
|
173
|
-
export function safeGet<T>(arr: T[], index: number): T | undefined {
|
|
174
|
-
return arr[index]
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
// Assert defined helper
|
|
178
|
-
export function assertDefined<T>(value: T | undefined | null, message: string): T {
|
|
179
|
-
if (value === undefined || value === null) {
|
|
180
|
-
throw new Error(message)
|
|
181
|
-
}
|
|
182
|
-
return value
|
|
183
|
-
}
|
package/CHANGELOG.md
DELETED
|
@@ -1,257 +0,0 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
You may also want to refer to [GitHub releases](https://github.com/transloadit/node-sdk/releases).
|
|
4
|
-
|
|
5
|
-
## Unreleased
|
|
6
|
-
|
|
7
|
-
- TBD
|
|
8
|
-
|
|
9
|
-
## v4.1.2
|
|
10
|
-
|
|
11
|
-
Released: 2025-12-08.
|
|
12
|
-
|
|
13
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v4.1.1...v4.1.2).
|
|
14
|
-
|
|
15
|
-
- CLI accepts `TRANSLOADIT_AUTH_KEY`/`TRANSLOADIT_AUTH_SECRET` as aliases for `TRANSLOADIT_KEY`/`TRANSLOADIT_SECRET` when authenticating commands.
|
|
16
|
-
- Internal: fix lint import ordering to keep CI green.
|
|
17
|
-
|
|
18
|
-
## v4.1.1
|
|
19
|
-
|
|
20
|
-
Released: 2025-12-08.
|
|
21
|
-
|
|
22
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v4.1.0...v4.1.1).
|
|
23
|
-
|
|
24
|
-
- CLI now accepts `TRANSLOADIT_AUTH_KEY`/`TRANSLOADIT_AUTH_SECRET` in addition to `TRANSLOADIT_KEY`/`TRANSLOADIT_SECRET` when authenticating commands.
|
|
25
|
-
|
|
26
|
-
## v4.1.0
|
|
27
|
-
|
|
28
|
-
Released: 2025-12-08.
|
|
29
|
-
|
|
30
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v4.0.7...v4.1.0).
|
|
31
|
-
|
|
32
|
-
- Add `signal` option to `createAssembly()` for cancelling in-flight HTTP requests and TUS uploads via `AbortController`
|
|
33
|
-
- Add `signal` and `onPoll` options to `awaitAssemblyCompletion()` for cancellation and early termination (useful for custom progress reporting or superseding assemblies in watch mode)
|
|
34
|
-
- Integrate transloadify CLI into the SDK, providing `assemblies`, `templates`, `bills`, and `assembly-notifications` commands
|
|
35
|
-
- Add `--log-level (-l)` CLI option using syslog severity levels (err=3, warn=4, notice=5, info=6, debug=7, trace=8)
|
|
36
|
-
- Add `--endpoint` CLI option for custom API endpoint (also reads `TRANSLOADIT_ENDPOINT` env var)
|
|
37
|
-
- Add `--single-assembly` flag to `assemblies create` for passing multiple input files to a single assembly
|
|
38
|
-
- Add `--concurrency` option to `assemblies create` to limit parallel processing (default: 5)
|
|
39
|
-
- Fix file descriptor exhaustion by closing streams immediately and creating fresh ones on demand
|
|
40
|
-
- Apply stricter biome lint rules (noExplicitAny, useAwait, noForEach, noNonNullAssertion)
|
|
41
|
-
|
|
42
|
-
## v4.0.7
|
|
43
|
-
|
|
44
|
-
Released: 2025-11-26.
|
|
45
|
-
|
|
46
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v4.0.6...v4.0.7).
|
|
47
|
-
|
|
48
|
-
- [x] Update schemas to match the latest API changes.
|
|
49
|
-
|
|
50
|
-
## v4.0.6
|
|
51
|
-
|
|
52
|
-
Released: 2025-11-04.
|
|
53
|
-
|
|
54
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v4.0.5...v4.0.6).
|
|
55
|
-
|
|
56
|
-
- [x] Re-export `AssemblyInstructions` and `AssemblyInstructionsInput` at the package entry to match the migration guide and TypeScript examples.
|
|
57
|
-
|
|
58
|
-
## v4.0.5
|
|
59
|
-
|
|
60
|
-
Released: 2025-10-16.
|
|
61
|
-
|
|
62
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v4.0.1...v4.0.5).
|
|
63
|
-
|
|
64
|
-
- [x] Add `smart_sig` CLI to return Smart CDN URLs via `getSignedSmartCDNUrl`, making it suitable as the cross-SDK reference implementation.
|
|
65
|
-
- [x] Add `sig` CLI command for generating request signatures, including an `--algorithm` flag for choosing the HMAC digest.
|
|
66
|
-
- [x] Ensure the CLI entrypoint executes when invoked through npm/yarn bin shims by resolving symlinks before bootstrapping.
|
|
67
|
-
- [x] Harden validation and tests around CLI invocation paths.
|
|
68
|
-
|
|
69
|
-
v4.0.2, v4.0.3, and v4.0.4 were broken releases
|
|
70
|
-
|
|
71
|
-
## v4.0.1
|
|
72
|
-
|
|
73
|
-
Released: 2025-09-18.
|
|
74
|
-
|
|
75
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v4.0.0...v4.0.1).
|
|
76
|
-
|
|
77
|
-
- [x] Re-published v4.0.0 under v4.0.1 to fix release metadata. No functional changes.
|
|
78
|
-
|
|
79
|
-
## v4.0.0
|
|
80
|
-
|
|
81
|
-
Released: 2025-09-18.
|
|
82
|
-
|
|
83
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v3.0.2...v4.0.0).
|
|
84
|
-
|
|
85
|
-
- [x] **Breaking:** Package is now pure ESM, requires Node.js 20+, and exports `{ Transloadit }` instead of a default client.
|
|
86
|
-
- [x] **Breaking** `TransloaditError` removed in favor of a new, slightly different `ApiError`.
|
|
87
|
-
- [x] Added end-to-end TypeScript typings for robots, assemblies, templates, and responses, so assembly instructions now autocomplete every robot and its supported parameters. Notably, Assembly instructions and statuses are validates against rich TypeScript types; migrate to the new `AssemblyInstructionsInput` types and `AssemblyStatus` in responses.
|
|
88
|
-
- [x] New rich error stacktraces that aid in debugging issues.
|
|
89
|
-
- [x] Added opt-in `validateResponses` safeguard and a `getSignedSmartCDNUrl` helper for generating signed Smart CDN URLs.
|
|
90
|
-
- [x] Fix broken rate limiting #217
|
|
91
|
-
- [x] Modernized tooling, tests, and examples (Vitest, Biome, TypeScript examples). See [MIGRATION.md](./MIGRATION.md) for a guided upgrade path.
|
|
92
|
-
|
|
93
|
-
## v3.0.2
|
|
94
|
-
|
|
95
|
-
Released: 2021-04-06.
|
|
96
|
-
|
|
97
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v3.0.1...v3.0.2).
|
|
98
|
-
|
|
99
|
-
- [x] Generate assembly IDs on the client to avoid relying on server timing.
|
|
100
|
-
- [x] Completed TypeScript surface for assembly responses by adding missing output properties.
|
|
101
|
-
|
|
102
|
-
## v3.0.1
|
|
103
|
-
|
|
104
|
-
Released: 2021-03-31.
|
|
105
|
-
|
|
106
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v3.0.0...v3.0.1).
|
|
107
|
-
|
|
108
|
-
- [x] Fixed the published default export to match the actual runtime client.
|
|
109
|
-
|
|
110
|
-
## v3.0.0
|
|
111
|
-
|
|
112
|
-
Released: 2021-03-16.
|
|
113
|
-
|
|
114
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v2.0.10...v3.0.0).
|
|
115
|
-
|
|
116
|
-
- [x] Finalized the promise-based client by removing legacy wrappers and tightening trailing-slash validation.
|
|
117
|
-
- [x] Expanded continuous testing, linting, and documentation coverage ahead of the stable v3 release.
|
|
118
|
-
- [x] Improved `createAssembly` diagnostics by logging assembly IDs and exposing replayed assembly URLs.
|
|
119
|
-
|
|
120
|
-
## v2.0.10
|
|
121
|
-
|
|
122
|
-
Released: 2020-02-25.
|
|
123
|
-
|
|
124
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v2.0.9...v2.0.10).
|
|
125
|
-
|
|
126
|
-
- [x] Update dependencies, thank you @dagreatbrendino
|
|
127
|
-
|
|
128
|
-
## v2.0.9
|
|
129
|
-
|
|
130
|
-
Released: 2018-12-06.
|
|
131
|
-
|
|
132
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v2.0.5...v2.0.9).
|
|
133
|
-
|
|
134
|
-
- [x] Add more helpful message to assembly error (#73)
|
|
135
|
-
- [x] Add Assembly ID to unknown errors
|
|
136
|
-
- [x] Upgrade linting and fix newly found errors
|
|
137
|
-
|
|
138
|
-
## v2.0.7
|
|
139
|
-
|
|
140
|
-
Released: 2018-12-06.
|
|
141
|
-
|
|
142
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v2.0.5...v2.0.7).
|
|
143
|
-
|
|
144
|
-
- [x] Fix Transloadit-Client header test for once and all (#62)
|
|
145
|
-
- [x] Fix bug causing progressCb to only be fired once
|
|
146
|
-
|
|
147
|
-
## v2.0.5
|
|
148
|
-
|
|
149
|
-
Released: 2018-12-06.
|
|
150
|
-
|
|
151
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v2.0.4...v2.0.5).
|
|
152
|
-
|
|
153
|
-
- [x] Make resize image example more usable irl
|
|
154
|
-
- [x] Update Readme to include example for progressCb.
|
|
155
|
-
- [x] Fix failing test due to version increase (#61)
|
|
156
|
-
- [x] Update npm-run-all to lose event-stream dependency
|
|
157
|
-
|
|
158
|
-
## v2.0.4
|
|
159
|
-
|
|
160
|
-
Released: 2018-11-05.
|
|
161
|
-
|
|
162
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v2.0.3...v2.0.4).
|
|
163
|
-
|
|
164
|
-
- [x] Send transloadit-client header (#59)
|
|
165
|
-
|
|
166
|
-
## v2.0.3
|
|
167
|
-
|
|
168
|
-
Released: 2018-10-29.
|
|
169
|
-
|
|
170
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v2.0.2...v2.0.3).
|
|
171
|
-
|
|
172
|
-
- [x] When adding a stream that throws an error, do not send it to Transloadit
|
|
173
|
-
|
|
174
|
-
## v2.0.2
|
|
175
|
-
|
|
176
|
-
Released: 2018-10-24.
|
|
177
|
-
|
|
178
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v2.0.1...v2.0.2).
|
|
179
|
-
|
|
180
|
-
- [x] Fix bug: invoke callback when there are no tus files to upload
|
|
181
|
-
|
|
182
|
-
## v2.0.1
|
|
183
|
-
|
|
184
|
-
Released: 2018-06-18.
|
|
185
|
-
|
|
186
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v2.0.0...v2.0.1).
|
|
187
|
-
|
|
188
|
-
- [x] Fix bug: invoke callback when waitforcompmletion is false
|
|
189
|
-
|
|
190
|
-
## v2.0.0
|
|
191
|
-
|
|
192
|
-
Released: 2018-06-08.
|
|
193
|
-
|
|
194
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v1.11.0...v2.0.0).
|
|
195
|
-
|
|
196
|
-
- [x] (MAJOR) Use of **tus** client to enable resumable uploads. (not strictly speaking breaking the api, but big enough of an implementation change to warant a major so you can take extra care things work well)
|
|
197
|
-
- [x] Support Assembly Progress Callback (this supports progress during file uploads and assemby execution).
|
|
198
|
-
|
|
199
|
-
## v1.11.0
|
|
200
|
-
|
|
201
|
-
Released: 2018-05-23.
|
|
202
|
-
|
|
203
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v1.10.2...v1.11.0).
|
|
204
|
-
|
|
205
|
-
- [x] Add Assembly URL to error console logs for easier debugging. (Q: should the node sdk log to console at all? should it not just work with callbacks and the caller decides what to write to what medium?)
|
|
206
|
-
|
|
207
|
-
## v1.10.3
|
|
208
|
-
|
|
209
|
-
Released: 2018-01-09.
|
|
210
|
-
|
|
211
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v1.10.1...v1.10.3).
|
|
212
|
-
|
|
213
|
-
- [x] Remove unused region parameter (@tim-kos)
|
|
214
|
-
|
|
215
|
-
## v1.10.2
|
|
216
|
-
|
|
217
|
-
Released: 2017-10-15.
|
|
218
|
-
|
|
219
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v1.10.0...v1.10.2).
|
|
220
|
-
|
|
221
|
-
- [x] Update lib files (@ifedapoolarewaju)
|
|
222
|
-
|
|
223
|
-
## v1.10.1
|
|
224
|
-
|
|
225
|
-
Released: 2017-10-02.
|
|
226
|
-
|
|
227
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v1.10.0...v1.10.1).
|
|
228
|
-
|
|
229
|
-
- [x] fix: check path for only direct Readable instances (@ifedapoolarewaju)
|
|
230
|
-
|
|
231
|
-
## v1.10.0
|
|
232
|
-
|
|
233
|
-
Released: 2017-09-28.
|
|
234
|
-
|
|
235
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v1.9.6...v1.10.0).
|
|
236
|
-
|
|
237
|
-
- [x] Do not retry infinitely if there is an unrecoverable error. Fixes #47. (@tim-kos)
|
|
238
|
-
- [x] Add the ability to wait for the encoding results of an assembly before the callback to createAssembly() is called (@tim-kos)
|
|
239
|
-
|
|
240
|
-
## v1.9.6
|
|
241
|
-
|
|
242
|
-
Released: 2017-09-26.
|
|
243
|
-
|
|
244
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v1.9.5...v1.9.6).
|
|
245
|
-
|
|
246
|
-
- [x] Fix bug that threw `TypeError: Cannot read property 'body' of undefined` (https://github.com/transloadit/node-sdk/issues/48) (@kvz)
|
|
247
|
-
- [x] Fix linting issues (@kvz)
|
|
248
|
-
- [x] Refactor via invig.io (@kvz)
|
|
249
|
-
- [x] Upgrade dependencies (@kvz)
|
|
250
|
-
|
|
251
|
-
## v1.9.5
|
|
252
|
-
|
|
253
|
-
Released: 2017-09-26.
|
|
254
|
-
|
|
255
|
-
[Diff](https://github.com/transloadit/node-sdk/compare/v0.0.22...1.9.5).
|
|
256
|
-
|
|
257
|
-
- [x] Start tracking CHANGELOG.md
|