@transloadit/zod 4.3.3 → 4.3.4

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 (47) hide show
  1. package/dist/v3/assemblyStatus.d.ts +8572 -4
  2. package/dist/v3/assemblyStatus.d.ts.map +1 -1
  3. package/dist/v3/assemblyStatus.js +17 -0
  4. package/dist/v3/robots/_instructions-primitives.d.ts +14 -9
  5. package/dist/v3/robots/_instructions-primitives.d.ts.map +1 -1
  6. package/dist/v3/robots/_instructions-primitives.js +34 -36
  7. package/dist/v3/robots/assembly-savejson.d.ts +79 -0
  8. package/dist/v3/robots/assembly-savejson.d.ts.map +1 -1
  9. package/dist/v3/robots/assembly-savejson.js +7 -0
  10. package/dist/v3/robots/file-filter.d.ts +2 -0
  11. package/dist/v3/robots/file-filter.d.ts.map +1 -1
  12. package/dist/v3/robots/file-filter.js +2 -1
  13. package/dist/v3/robots/http-import.d.ts +12 -0
  14. package/dist/v3/robots/http-import.d.ts.map +1 -1
  15. package/dist/v3/robots/http-import.js +8 -0
  16. package/dist/v3/robots/image-facedetect.d.ts +28 -0
  17. package/dist/v3/robots/image-facedetect.d.ts.map +1 -1
  18. package/dist/v3/robots/image-facedetect.js +19 -1
  19. package/dist/v3/robots/speech-transcribe.d.ts +38 -8
  20. package/dist/v3/robots/speech-transcribe.d.ts.map +1 -1
  21. package/dist/v3/robots/speech-transcribe.js +60 -5
  22. package/dist/v3/robots/video-encode.d.ts.map +1 -1
  23. package/dist/v3/robots/video-encode.js +2 -0
  24. package/dist/v4/assemblyStatus.d.ts +188 -0
  25. package/dist/v4/assemblyStatus.d.ts.map +1 -1
  26. package/dist/v4/assemblyStatus.js +17 -0
  27. package/dist/v4/robots/_instructions-primitives.d.ts +14 -9
  28. package/dist/v4/robots/_instructions-primitives.d.ts.map +1 -1
  29. package/dist/v4/robots/_instructions-primitives.js +34 -36
  30. package/dist/v4/robots/assembly-savejson.d.ts +51 -0
  31. package/dist/v4/robots/assembly-savejson.d.ts.map +1 -1
  32. package/dist/v4/robots/assembly-savejson.js +7 -0
  33. package/dist/v4/robots/file-filter.d.ts +2 -0
  34. package/dist/v4/robots/file-filter.d.ts.map +1 -1
  35. package/dist/v4/robots/file-filter.js +2 -1
  36. package/dist/v4/robots/http-import.d.ts +4 -0
  37. package/dist/v4/robots/http-import.d.ts.map +1 -1
  38. package/dist/v4/robots/http-import.js +8 -0
  39. package/dist/v4/robots/image-facedetect.d.ts +17 -0
  40. package/dist/v4/robots/image-facedetect.d.ts.map +1 -1
  41. package/dist/v4/robots/image-facedetect.js +19 -1
  42. package/dist/v4/robots/speech-transcribe.d.ts +18 -4
  43. package/dist/v4/robots/speech-transcribe.d.ts.map +1 -1
  44. package/dist/v4/robots/speech-transcribe.js +60 -5
  45. package/dist/v4/robots/video-encode.d.ts.map +1 -1
  46. package/dist/v4/robots/video-encode.js +2 -0
  47. package/package.json +2 -2
@@ -21,7 +21,32 @@ export declare const robotAssemblySavejsonInstructionsSchema: z.ZodObject<{
21
21
  }>>]>, z.ZodTransform<string[], boolean | ("meta" | "execute")[]>>>;
22
22
  robot: z.ZodLiteral<"/assembly/savejson">;
23
23
  }, z.core.$strict>;
24
+ export declare const robotAssemblySavejsonInstructionsWithHiddenFieldsSchema: z.ZodObject<{
25
+ interpolate: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
26
+ false: "false";
27
+ true: "true";
28
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>, z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
29
+ false: "false";
30
+ true: "true";
31
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>>]>>;
32
+ output_meta: z.ZodOptional<z.ZodUnion<readonly [z.ZodRecord<z.ZodString, z.ZodBoolean>, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
33
+ result: z.ZodDefault<z.ZodBoolean>;
34
+ queue: z.ZodOptional<z.ZodEnum<{
35
+ batch: "batch";
36
+ }>>;
37
+ force_accept: z.ZodDefault<z.ZodBoolean>;
38
+ ignore_errors: z.ZodDefault<z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodArray<z.ZodEnum<{
39
+ meta: "meta";
40
+ execute: "execute";
41
+ }>>]>, z.ZodTransform<string[], boolean | ("meta" | "execute")[]>>>;
42
+ robot: z.ZodLiteral<"/assembly/savejson">;
43
+ assembly_id: z.ZodOptional<z.ZodString>;
44
+ expiry: z.ZodOptional<z.ZodString>;
45
+ instance: z.ZodOptional<z.ZodString>;
46
+ status: z.ZodOptional<z.ZodUnknown>;
47
+ }, z.core.$strict>;
24
48
  export type RobotAssemblySavejsonInstructions = z.infer<typeof robotAssemblySavejsonInstructionsSchema>;
49
+ export type RobotAssemblySavejsonInstructionsWithHiddenFields = z.infer<typeof robotAssemblySavejsonInstructionsWithHiddenFieldsSchema>;
25
50
  export declare const interpolatableRobotAssemblySavejsonInstructionsSchema: z.ZodObject<{
26
51
  interpolate: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
27
52
  false: "false";
@@ -44,4 +69,30 @@ export declare const interpolatableRobotAssemblySavejsonInstructionsSchema: z.Zo
44
69
  }, z.core.$strict>;
45
70
  export type InterpolatableRobotAssemblySavejsonInstructions = InterpolatableRobotAssemblySavejsonInstructionsInput;
46
71
  export type InterpolatableRobotAssemblySavejsonInstructionsInput = z.input<typeof interpolatableRobotAssemblySavejsonInstructionsSchema>;
72
+ export declare const interpolatableRobotAssemblySavejsonInstructionsWithHiddenFieldsSchema: z.ZodObject<{
73
+ interpolate: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
74
+ false: "false";
75
+ true: "true";
76
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>, z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
77
+ false: "false";
78
+ true: "true";
79
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>>]>>;
80
+ output_meta: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodBoolean]>>, z.ZodUnion<[z.ZodString, z.ZodBoolean]>, z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>]>>;
81
+ result: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
82
+ queue: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<{
83
+ batch: "batch";
84
+ }>]>>;
85
+ force_accept: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
86
+ ignore_errors: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodArray<z.ZodEnum<{
87
+ meta: "meta";
88
+ execute: "execute";
89
+ }>>]>, z.ZodTransform<string[], boolean | ("meta" | "execute")[]>>]>>;
90
+ robot: z.ZodLiteral<"/assembly/savejson">;
91
+ assembly_id: z.ZodOptional<z.ZodString>;
92
+ expiry: z.ZodOptional<z.ZodString>;
93
+ instance: z.ZodOptional<z.ZodString>;
94
+ status: z.ZodOptional<z.ZodUnknown>;
95
+ }, z.core.$strict>;
96
+ export type InterpolatableRobotAssemblySavejsonInstructionsWithHiddenFields = z.infer<typeof interpolatableRobotAssemblySavejsonInstructionsWithHiddenFieldsSchema>;
97
+ export type InterpolatableRobotAssemblySavejsonInstructionsWithHiddenFieldsInput = z.input<typeof interpolatableRobotAssemblySavejsonInstructionsWithHiddenFieldsSchema>;
47
98
  //# sourceMappingURL=assembly-savejson.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"assembly-savejson.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/assembly-savejson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAI1B,eAAO,MAAM,IAAI,EAAE,cAgClB,CAAA;AAED,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;kBAMzC,CAAA;AAEX,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CACrD,OAAO,uCAAuC,CAC/C,CAAA;AAED,eAAO,MAAM,qDAAqD;;;;;;;;;;;;;;;;;;;kBAEjE,CAAA;AACD,MAAM,MAAM,+CAA+C,GACzD,oDAAoD,CAAA;AAEtD,MAAM,MAAM,oDAAoD,GAAG,CAAC,CAAC,KAAK,CACxE,OAAO,qDAAqD,CAC7D,CAAA"}
1
+ {"version":3,"file":"assembly-savejson.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/assembly-savejson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAI1B,eAAO,MAAM,IAAI,EAAE,cAgClB,CAAA;AAED,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;kBAMzC,CAAA;AAEX,eAAO,MAAM,uDAAuD;;;;;;;;;;;;;;;;;;;;;;;kBAMhE,CAAA;AAEJ,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CACrD,OAAO,uCAAuC,CAC/C,CAAA;AACD,MAAM,MAAM,iDAAiD,GAAG,CAAC,CAAC,KAAK,CACrE,OAAO,uDAAuD,CAC/D,CAAA;AAED,eAAO,MAAM,qDAAqD;;;;;;;;;;;;;;;;;;;kBAEjE,CAAA;AACD,MAAM,MAAM,+CAA+C,GACzD,oDAAoD,CAAA;AAEtD,MAAM,MAAM,oDAAoD,GAAG,CAAC,CAAC,KAAK,CACxE,OAAO,qDAAqD,CAC7D,CAAA;AAED,eAAO,MAAM,qEAAqE;;;;;;;;;;;;;;;;;;;;;;;kBACP,CAAA;AAC3E,MAAM,MAAM,+DAA+D,GAAG,CAAC,CAAC,KAAK,CACnF,OAAO,qEAAqE,CAC7E,CAAA;AAED,MAAM,MAAM,oEAAoE,GAAG,CAAC,CAAC,KAAK,CACxF,OAAO,qEAAqE,CAC7E,CAAA"}
@@ -40,4 +40,11 @@ TODO: Add robot description here
40
40
  `),
41
41
  })
42
42
  .strict();
43
+ export const robotAssemblySavejsonInstructionsWithHiddenFieldsSchema = robotAssemblySavejsonInstructionsSchema.extend({
44
+ assembly_id: z.string().optional(),
45
+ expiry: z.string().optional(),
46
+ instance: z.string().optional(),
47
+ status: z.unknown().optional(),
48
+ });
43
49
  export const interpolatableRobotAssemblySavejsonInstructionsSchema = interpolateRobot(robotAssemblySavejsonInstructionsSchema);
50
+ export const interpolatableRobotAssemblySavejsonInstructionsWithHiddenFieldsSchema = interpolateRobot(robotAssemblySavejsonInstructionsWithHiddenFieldsSchema);
@@ -1,5 +1,7 @@
1
1
  import type { RobotMetaInput } from './_instructions-primitives.ts';
2
2
  import { z } from 'zod/v4';
3
+ export type { FilterCondition, FilterConditionOperator, FilterConditionPart, } from './_instructions-primitives.ts';
4
+ export { filterConditionOperatorSchema, filterConditionPartSchema, } from './_instructions-primitives.ts';
3
5
  export declare const meta: RobotMetaInput;
4
6
  export declare const robotFileFilterInstructionsSchema: z.ZodObject<{
5
7
  interpolate: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
@@ -1 +1 @@
1
- {"version":3,"file":"file-filter.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/file-filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAS1B,eAAO,MAAM,IAAI,EAAE,cAsClB,CAAA;AAED,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAiHnC,CAAA;AAEX,eAAO,MAAM,iDAAiD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAK1D,CAAA;AAEJ,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAA;AAC3F,MAAM,MAAM,2CAA2C,GAAG,CAAC,CAAC,KAAK,CAC/D,OAAO,iDAAiD,CACzD,CAAA;AAED,eAAO,MAAM,+CAA+C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE3D,CAAA;AACD,MAAM,MAAM,yCAAyC,GACnD,8CAA8C,CAAA;AAEhD,MAAM,MAAM,8CAA8C,GAAG,CAAC,CAAC,KAAK,CAClE,OAAO,+CAA+C,CACvD,CAAA;AAED,eAAO,MAAM,+DAA+D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE3E,CAAA;AACD,MAAM,MAAM,yDAAyD,GAAG,CAAC,CAAC,KAAK,CAC7E,OAAO,+DAA+D,CACvE,CAAA;AACD,MAAM,MAAM,8DAA8D,GAAG,CAAC,CAAC,KAAK,CAClF,OAAO,+DAA+D,CACvE,CAAA"}
1
+ {"version":3,"file":"file-filter.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/file-filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAS1B,YAAY,EACV,eAAe,EACf,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EACL,6BAA6B,EAC7B,yBAAyB,GAC1B,MAAM,+BAA+B,CAAA;AAEtC,eAAO,MAAM,IAAI,EAAE,cAsClB,CAAA;AAED,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAiHnC,CAAA;AAEX,eAAO,MAAM,iDAAiD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAK1D,CAAA;AAEJ,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAA;AAC3F,MAAM,MAAM,2CAA2C,GAAG,CAAC,CAAC,KAAK,CAC/D,OAAO,iDAAiD,CACzD,CAAA;AAED,eAAO,MAAM,+CAA+C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE3D,CAAA;AACD,MAAM,MAAM,yCAAyC,GACnD,8CAA8C,CAAA;AAEhD,MAAM,MAAM,8CAA8C,GAAG,CAAC,CAAC,KAAK,CAClE,OAAO,+CAA+C,CACvD,CAAA;AAED,eAAO,MAAM,+DAA+D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE3E,CAAA;AACD,MAAM,MAAM,yDAAyD,GAAG,CAAC,CAAC,KAAK,CAC7E,OAAO,+DAA+D,CACvE,CAAA;AACD,MAAM,MAAM,8DAA8D,GAAG,CAAC,CAAC,KAAK,CAClF,OAAO,+DAA+D,CACvE,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod/v4';
2
2
  import { filterCondition, interpolateRobot, robotBase, robotUse, } from "./_instructions-primitives.js";
3
+ export { filterConditionOperatorSchema, filterConditionPartSchema, } from "./_instructions-primitives.js";
3
4
  export const meta = {
4
5
  bytescount: 0,
5
6
  discount_factor: 0,
@@ -61,7 +62,7 @@ Passing JavaScript allows you to implement logic as complex as you wish, however
61
62
  The \`accepts\` and \`declines\` parameters can each be set to an array of arrays with three members:
62
63
 
63
64
  1. A value or job variable, such as \`\${file.mime}\`
64
- 2. One of the following operators: \`==\`, \`===\`, \`<\`, \`>\`, \`<=\`, \`>=\`, \`!=\`, \`!==\`, \`regex\`, \`!regex\`, \`includes\`, \`!includes\`
65
+ 2. One of the following operators: \`=\`, \`==\`, \`===\`, \`<\`, \`>\`, \`<=\`, \`>=\`, \`!=\`, \`!==\`, \`regex\`, \`!regex\`, \`includes\`, \`!includes\`, \`empty\`, \`!empty\`
65
66
  3. A value or job variable, such as \`50\` or \`"foo"\`
66
67
 
67
68
  Examples:
@@ -27,6 +27,7 @@ export declare const robotHttpImportInstructionsSchema: z.ZodObject<{
27
27
  headers: z.ZodDefault<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodString>>, z.ZodString]>>;
28
28
  import_on_errors: z.ZodDefault<z.ZodArray<z.ZodString>>;
29
29
  fail_fast: z.ZodDefault<z.ZodBoolean>;
30
+ max_file_size: z.ZodOptional<z.ZodNumber>;
30
31
  return_file_stubs: z.ZodDefault<z.ZodBoolean>;
31
32
  range: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
32
33
  }, z.core.$strict>;
@@ -53,6 +54,7 @@ export declare const robotHttpImportInstructionsWithHiddenFieldsSchema: z.ZodObj
53
54
  headers: z.ZodDefault<z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodString>>, z.ZodString]>>;
54
55
  import_on_errors: z.ZodDefault<z.ZodArray<z.ZodString>>;
55
56
  fail_fast: z.ZodDefault<z.ZodBoolean>;
57
+ max_file_size: z.ZodOptional<z.ZodNumber>;
56
58
  return_file_stubs: z.ZodDefault<z.ZodBoolean>;
57
59
  range: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
58
60
  use: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>, z.ZodArray<z.ZodObject<{
@@ -106,6 +108,7 @@ export declare const interpolatableRobotHttpImportInstructionsSchema: z.ZodObjec
106
108
  headers: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>, z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodString>>]>, z.ZodString]>>;
107
109
  import_on_errors: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>>;
108
110
  fail_fast: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
111
+ max_file_size: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
109
112
  return_file_stubs: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
110
113
  range: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodString, z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>]>>;
111
114
  }, z.core.$strict>;
@@ -134,6 +137,7 @@ export declare const interpolatableRobotHttpImportInstructionsWithHiddenFieldsSc
134
137
  headers: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>, z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodString>>]>, z.ZodString]>>;
135
138
  import_on_errors: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>>;
136
139
  fail_fast: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
140
+ max_file_size: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
137
141
  return_file_stubs: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
138
142
  range: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodString, z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>]>>;
139
143
  use: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>, z.ZodArray<z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"http-import.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/http-import.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAU1B,eAAO,MAAM,IAAI,EAAE,cAiClB,CAAA;AAED,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkFnC,CAAA;AAEX,eAAO,MAAM,iDAAiD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAiB1D,CAAA;AAEJ,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAA;AAC3F,MAAM,MAAM,2CAA2C,GAAG,CAAC,CAAC,KAAK,CAC/D,OAAO,iDAAiD,CACzD,CAAA;AAED,eAAO,MAAM,+CAA+C;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE3D,CAAA;AACD,MAAM,MAAM,yCAAyC,GACnD,8CAA8C,CAAA;AAEhD,MAAM,MAAM,8CAA8C,GAAG,CAAC,CAAC,KAAK,CAClE,OAAO,+CAA+C,CACvD,CAAA;AAED,eAAO,MAAM,+DAA+D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE3E,CAAA;AACD,MAAM,MAAM,yDAAyD,GAAG,CAAC,CAAC,KAAK,CAC7E,OAAO,+DAA+D,CACvE,CAAA;AACD,MAAM,MAAM,8DAA8D,GAAG,CAAC,CAAC,KAAK,CAClF,OAAO,+DAA+D,CACvE,CAAA"}
1
+ {"version":3,"file":"http-import.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/http-import.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAU1B,eAAO,MAAM,IAAI,EAAE,cAiClB,CAAA;AAED,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA0FnC,CAAA;AAEX,eAAO,MAAM,iDAAiD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAiB1D,CAAA;AAEJ,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAA;AAC3F,MAAM,MAAM,2CAA2C,GAAG,CAAC,CAAC,KAAK,CAC/D,OAAO,iDAAiD,CACzD,CAAA;AAED,eAAO,MAAM,+CAA+C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE3D,CAAA;AACD,MAAM,MAAM,yCAAyC,GACnD,8CAA8C,CAAA;AAEhD,MAAM,MAAM,8CAA8C,GAAG,CAAC,CAAC,KAAK,CAClE,OAAO,+CAA+C,CACvD,CAAA;AAED,eAAO,MAAM,+DAA+D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE3E,CAAA;AACD,MAAM,MAAM,yDAAyD,GAAG,CAAC,CAAC,KAAK,CAC7E,OAAO,+DAA+D,CACvE,CAAA;AACD,MAAM,MAAM,8DAA8D,GAAG,CAAC,CAAC,KAAK,CAClF,OAAO,+DAA+D,CACvE,CAAA"}
@@ -92,6 +92,14 @@ Setting this to \`"meta"\` will still import the file on metadata extraction err
92
92
  .default(false)
93
93
  .describe(`
94
94
  Disable the internal retry mechanism, and fail immediately if a resource can't be imported. This can be useful for performance critical applications.
95
+ `),
96
+ max_file_size: z
97
+ .number()
98
+ .int()
99
+ .positive()
100
+ .optional()
101
+ .describe(`
102
+ Maximum allowed size in bytes for each imported file. If the remote server reports a larger file size, the import is rejected before the download starts. If the remote server does not report a size upfront, the download is aborted once this limit is exceeded.
95
103
  `),
96
104
  return_file_stubs,
97
105
  range: z
@@ -1,5 +1,22 @@
1
1
  import type { RobotMetaInput } from './_instructions-primitives.ts';
2
2
  import { z } from 'zod/v4';
3
+ export declare const imageFacedetectFaceSelectionModes: readonly ["each", "group", "max-confidence", "max-size"];
4
+ export declare const imageFacedetectFaceSelectionModeSchema: z.ZodEnum<{
5
+ each: "each";
6
+ group: "group";
7
+ "max-confidence": "max-confidence";
8
+ "max-size": "max-size";
9
+ }>;
10
+ export declare const imageFacedetectFaceCoordinatesSchema: z.ZodObject<{
11
+ confidence: z.ZodOptional<z.ZodNumber>;
12
+ height: z.ZodNumber;
13
+ width: z.ZodNumber;
14
+ x1: z.ZodNumber;
15
+ x2: z.ZodOptional<z.ZodNumber>;
16
+ y1: z.ZodNumber;
17
+ y2: z.ZodOptional<z.ZodNumber>;
18
+ }, z.core.$catchall<z.ZodUnknown>>;
19
+ export type ImageFacedetectFaceCoordinates = z.infer<typeof imageFacedetectFaceCoordinatesSchema>;
3
20
  export declare const meta: RobotMetaInput;
4
21
  export declare const robotImageFacedetectInstructionsSchema: z.ZodObject<{
5
22
  interpolate: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
@@ -1 +1 @@
1
- {"version":3,"file":"image-facedetect.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/image-facedetect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAS1B,eAAO,MAAM,IAAI,EAAE,cAuClB,CAAA;AAED,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAqGxC,CAAA;AAEX,eAAO,MAAM,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAK/D,CAAA;AAEJ,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CACpD,OAAO,sCAAsC,CAC9C,CAAA;AACD,MAAM,MAAM,gDAAgD,GAAG,CAAC,CAAC,KAAK,CACpE,OAAO,sDAAsD,CAC9D,CAAA;AAED,eAAO,MAAM,oDAAoD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAEhE,CAAA;AACD,MAAM,MAAM,8CAA8C,GACxD,mDAAmD,CAAA;AAErD,MAAM,MAAM,mDAAmD,GAAG,CAAC,CAAC,KAAK,CACvE,OAAO,oDAAoD,CAC5D,CAAA;AAED,eAAO,MAAM,oEAAoE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBACP,CAAA;AAC1E,MAAM,MAAM,8DAA8D,GAAG,CAAC,CAAC,KAAK,CAClF,OAAO,oEAAoE,CAC5E,CAAA;AACD,MAAM,MAAM,mEAAmE,GAAG,CAAC,CAAC,KAAK,CACvF,OAAO,oEAAoE,CAC5E,CAAA"}
1
+ {"version":3,"file":"image-facedetect.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/image-facedetect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAS1B,eAAO,MAAM,iCAAiC,0DAKpC,CAAA;AAEV,eAAO,MAAM,sCAAsC;;;;;EAA4C,CAAA;AAE/F,eAAO,MAAM,oCAAoC;;;;;;;;kCAUzB,CAAA;AAExB,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAA;AAEjG,eAAO,MAAM,IAAI,EAAE,cAuClB,CAAA;AAED,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAqGxC,CAAA;AAEX,eAAO,MAAM,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAK/D,CAAA;AAEJ,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CACpD,OAAO,sCAAsC,CAC9C,CAAA;AACD,MAAM,MAAM,gDAAgD,GAAG,CAAC,CAAC,KAAK,CACpE,OAAO,sDAAsD,CAC9D,CAAA;AAED,eAAO,MAAM,oDAAoD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAEhE,CAAA;AACD,MAAM,MAAM,8CAA8C,GACxD,mDAAmD,CAAA;AAErD,MAAM,MAAM,mDAAmD,GAAG,CAAC,CAAC,KAAK,CACvE,OAAO,oDAAoD,CAC5D,CAAA;AAED,eAAO,MAAM,oEAAoE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBACP,CAAA;AAC1E,MAAM,MAAM,8DAA8D,GAAG,CAAC,CAAC,KAAK,CAClF,OAAO,oEAAoE,CAC5E,CAAA;AACD,MAAM,MAAM,mEAAmE,GAAG,CAAC,CAAC,KAAK,CACvF,OAAO,oEAAoE,CAC5E,CAAA"}
@@ -1,5 +1,23 @@
1
1
  import { z } from 'zod/v4';
2
2
  import { aiProviderSchema, interpolateRobot, robotBase, robotUse, } from "./_instructions-primitives.js";
3
+ export const imageFacedetectFaceSelectionModes = [
4
+ 'each',
5
+ 'group',
6
+ 'max-confidence',
7
+ 'max-size',
8
+ ];
9
+ export const imageFacedetectFaceSelectionModeSchema = z.enum(imageFacedetectFaceSelectionModes);
10
+ export const imageFacedetectFaceCoordinatesSchema = z
11
+ .object({
12
+ confidence: z.number().optional(),
13
+ height: z.number(),
14
+ width: z.number(),
15
+ x1: z.number(),
16
+ x2: z.number().optional(),
17
+ y1: z.number(),
18
+ y2: z.number().optional(),
19
+ })
20
+ .catchall(z.unknown());
3
21
  export const meta = {
4
22
  bytescount: 1,
5
23
  discount_factor: 1,
@@ -92,7 +110,7 @@ The default value \`"preserve"\` means that the input image format is re-used.
92
110
  Specifies the minimum confidence that a detected face must have. Only faces which have a higher confidence value than this threshold will be included in the result.
93
111
  `),
94
112
  faces: z
95
- .union([z.enum(['each', 'group', 'max-confidence', 'max-size']), z.number().int()])
113
+ .union([imageFacedetectFaceSelectionModeSchema, z.number().int()])
96
114
  .default('each')
97
115
  .describe(`
98
116
  Determines which of the detected faces should be returned. Valid values are:
@@ -34,7 +34,7 @@ export declare const robotSpeechTranscribeInstructionsSchema: z.ZodObject<{
34
34
  fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
35
35
  }, z.core.$strict>]>>;
36
36
  robot: z.ZodLiteral<"/speech/transcribe">;
37
- provider: z.ZodDefault<z.ZodEnum<{
37
+ provider: z.ZodOptional<z.ZodEnum<{
38
38
  aws: "aws";
39
39
  gcp: "gcp";
40
40
  replicate: "replicate";
@@ -50,6 +50,8 @@ export declare const robotSpeechTranscribeInstructionsSchema: z.ZodObject<{
50
50
  srt: "srt";
51
51
  webvtt: "webvtt";
52
52
  }>>;
53
+ speaker_labels: z.ZodDefault<z.ZodBoolean>;
54
+ max_speakers: z.ZodDefault<z.ZodNumber>;
53
55
  source_language: z.ZodDefault<z.ZodString>;
54
56
  target_language: z.ZodDefault<z.ZodString>;
55
57
  }, z.core.$strict>;
@@ -96,9 +98,14 @@ export declare const robotSpeechTranscribeInstructionsWithHiddenFieldsSchema: z.
96
98
  srt: "srt";
97
99
  webvtt: "webvtt";
98
100
  }>>;
101
+ speaker_labels: z.ZodDefault<z.ZodBoolean>;
102
+ max_speakers: z.ZodDefault<z.ZodNumber>;
99
103
  source_language: z.ZodDefault<z.ZodString>;
100
104
  target_language: z.ZodDefault<z.ZodString>;
101
- provider: z.ZodDefault<z.ZodEnum<{
105
+ model: z.ZodOptional<z.ZodEnum<{
106
+ "whisper-large-v3": "whisper-large-v3";
107
+ }>>;
108
+ provider: z.ZodOptional<z.ZodEnum<{
102
109
  aws: "aws";
103
110
  gcp: "gcp";
104
111
  replicate: "replicate";
@@ -141,7 +148,7 @@ export declare const interpolatableRobotSpeechTranscribeInstructionsSchema: z.Zo
141
148
  fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
142
149
  }, z.core.$strict>]>>;
143
150
  robot: z.ZodLiteral<"/speech/transcribe">;
144
- provider: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
151
+ provider: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<{
145
152
  aws: "aws";
146
153
  gcp: "gcp";
147
154
  replicate: "replicate";
@@ -157,6 +164,8 @@ export declare const interpolatableRobotSpeechTranscribeInstructionsSchema: z.Zo
157
164
  srt: "srt";
158
165
  webvtt: "webvtt";
159
166
  }>]>>;
167
+ speaker_labels: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
168
+ max_speakers: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
160
169
  source_language: z.ZodDefault<z.ZodString>;
161
170
  target_language: z.ZodDefault<z.ZodString>;
162
171
  }, z.core.$strict>;
@@ -205,9 +214,14 @@ export declare const interpolatableRobotSpeechTranscribeInstructionsWithHiddenFi
205
214
  srt: "srt";
206
215
  webvtt: "webvtt";
207
216
  }>]>>;
217
+ speaker_labels: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
218
+ max_speakers: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
208
219
  source_language: z.ZodDefault<z.ZodString>;
209
220
  target_language: z.ZodDefault<z.ZodString>;
210
- provider: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
221
+ model: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<{
222
+ "whisper-large-v3": "whisper-large-v3";
223
+ }>]>>;
224
+ provider: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<{
211
225
  aws: "aws";
212
226
  gcp: "gcp";
213
227
  replicate: "replicate";
@@ -1 +1 @@
1
- {"version":3,"file":"speech-transcribe.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/speech-transcribe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAc1B,eAAO,MAAM,IAAI,EAAE,cA6ClB,CAAA;AAED,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAgDzC,CAAA;AAEX,eAAO,MAAM,uDAAuD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAMhE,CAAA;AAEJ,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CACrD,OAAO,uCAAuC,CAC/C,CAAA;AACD,MAAM,MAAM,iDAAiD,GAAG,CAAC,CAAC,KAAK,CACrE,OAAO,uDAAuD,CAC/D,CAAA;AAED,eAAO,MAAM,qDAAqD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAEjE,CAAA;AACD,MAAM,MAAM,+CAA+C,GACzD,oDAAoD,CAAA;AAEtD,MAAM,MAAM,oDAAoD,GAAG,CAAC,CAAC,KAAK,CACxE,OAAO,qDAAqD,CAC7D,CAAA;AAED,eAAO,MAAM,qEAAqE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBACP,CAAA;AAC3E,MAAM,MAAM,+DAA+D,GAAG,CAAC,CAAC,KAAK,CACnF,OAAO,qEAAqE,CAC7E,CAAA;AACD,MAAM,MAAM,oEAAoE,GAAG,CAAC,CAAC,KAAK,CACxF,OAAO,qEAAqE,CAC7E,CAAA"}
1
+ {"version":3,"file":"speech-transcribe.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/speech-transcribe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAc1B,eAAO,MAAM,IAAI,EAAE,cA6ClB,CAAA;AAED,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAsGzC,CAAA;AAEX,eAAO,MAAM,uDAAuD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAOhE,CAAA;AAEJ,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CACrD,OAAO,uCAAuC,CAC/C,CAAA;AACD,MAAM,MAAM,iDAAiD,GAAG,CAAC,CAAC,KAAK,CACrE,OAAO,uDAAuD,CAC/D,CAAA;AAED,eAAO,MAAM,qDAAqD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAEjE,CAAA;AACD,MAAM,MAAM,+CAA+C,GACzD,oDAAoD,CAAA;AAEtD,MAAM,MAAM,oDAAoD,GAAG,CAAC,CAAC,KAAK,CACxE,OAAO,qDAAqD,CAC7D,CAAA;AAED,eAAO,MAAM,qEAAqE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBACP,CAAA;AAC3E,MAAM,MAAM,+DAA+D,GAAG,CAAC,CAAC,KAAK,CACnF,OAAO,qEAAqE,CAC7E,CAAA;AACD,MAAM,MAAM,oEAAoE,GAAG,CAAC,CAAC,KAAK,CACxF,OAAO,qEAAqE,CAC7E,CAAA"}
@@ -1,9 +1,9 @@
1
1
  import { z } from 'zod/v4';
2
2
  import { granularitySchema, interpolateRobot, robotBase, robotUse, } from "./_instructions-primitives.js";
3
- const speechTranscribeProviderSchema = z.enum(['aws', 'gcp', 'replicate']).default('replicate');
3
+ const speechTranscribeProviderSchema = z.enum(['aws', 'gcp', 'replicate']).optional();
4
4
  const speechTranscribeProviderWithHiddenFieldsSchema = z
5
5
  .enum(['aws', 'gcp', 'replicate', 'transloadit'])
6
- .default('replicate');
6
+ .optional();
7
7
  export const meta = {
8
8
  bytescount: 1,
9
9
  discount_factor: 1,
@@ -56,11 +56,48 @@ export const robotSpeechTranscribeInstructionsSchema = robotBase
56
56
  You can use the text that we return in your application, or you can pass the text down to other <dfn>Robots</dfn> to filter audio or video files that contain (or do not contain) certain content, or burn the text into images or video for example.
57
57
 
58
58
  Another common use case is automatically subtitling videos, or making audio searchable.
59
+
60
+ Set \`speaker_labels\` to \`true\` when you want JSON or meta transcription output to distinguish
61
+ recurring speakers:
62
+
63
+ \`\`\`json
64
+ {
65
+ "steps": {
66
+ "transcribed": {
67
+ "use": ":original",
68
+ "robot": "/speech/transcribe",
69
+ "provider": "aws",
70
+ "format": "json",
71
+ "speaker_labels": true,
72
+ "max_speakers": 3
73
+ }
74
+ }
75
+ }
76
+ \`\`\`
77
+
78
+ Speaker labels are currently supported by the \`aws\` and \`gcp\` providers. If you enable
79
+ \`speaker_labels\` without setting \`provider\`, Transloadit uses \`aws\` for that <dfn>Step</dfn>. Labels
80
+ are normalized as \`speaker_1\`, \`speaker_2\`, and so on:
81
+
82
+ \`\`\`json
83
+ {
84
+ "text": "Hello there. Hi!",
85
+ "words": [
86
+ { "text": "Hello", "startTime": 0, "endTime": 0.5, "speaker": "speaker_1" },
87
+ { "text": "there", "startTime": 0.6, "endTime": 1, "speaker": "speaker_1" },
88
+ { "text": "Hi!", "startTime": 1.2, "endTime": 1.8, "speaker": "speaker_2" }
89
+ ],
90
+ "segments": [
91
+ { "text": "Hello there", "startTime": 0, "endTime": 1, "speaker": "speaker_1" },
92
+ { "text": "Hi!", "startTime": 1.2, "endTime": 1.8, "speaker": "speaker_2" }
93
+ ]
94
+ }
95
+ \`\`\`
59
96
  `),
60
97
  provider: speechTranscribeProviderSchema.describe(`
61
98
  Which AI provider to leverage.
62
99
 
63
- Defaults to \`"replicate"\`, which currently uses our highest-quality deployed transcription path while ElevenLabs Scribe support is being prepared.
100
+ Defaults to \`"replicate"\`, which currently uses our highest-quality deployed transcription path while ElevenLabs Scribe support is being prepared. When \`speaker_labels\` is \`true\` and \`provider\` is omitted, Transloadit defaults to \`"aws"\`, because speaker labels are currently supported by the \`aws\` and \`gcp\` providers.
64
101
 
65
102
  Transloadit abstracts the interface so you can expect the same data structures, but different latencies and information being returned. Different cloud vendors have different areas they shine in, and we recommend to try out and see what yields the best results for your use case.
66
103
  `),
@@ -74,9 +111,26 @@ Whether to return a full response (\`"full"\`), or a flat list of descriptions (
74
111
  Output format for the transcription.
75
112
 
76
113
  - \`"text"\` outputs a plain text file that you can store and process.
77
- - \`"json"\` outputs a JSON file containing timestamped words.
114
+ - \`"json"\` outputs a JSON file containing timestamped words. When \`speaker_labels\` is enabled, words can include \`speaker\` labels and the JSON can also include grouped \`segments\` by speaker.
78
115
  - \`"srt"\` and \`"webvtt"\` output subtitle files of those respective file types, which can be stored separately or used in other encoding <dfn>Steps</dfn>.
79
- - \`"meta"\` does not return a file, but stores the data inside Transloadit's file object (under \`\${file.meta.transcription.text}\`) that's passed around between encoding <dfn>Steps</dfn>, so that you can use the values to burn the data into videos, filter on them, etc.
116
+ - \`"meta"\` does not return a file, but stores the data inside Transloadit's file object (under \`\${file.meta.transcription.text}\`, \`\${file.meta.transcription.words}\`, and, when speaker labels are available, \`\${file.meta.transcription.segments}\`) that's passed around between encoding <dfn>Steps</dfn>, so that you can use the values to burn the data into videos, filter on them, etc.
117
+ `),
118
+ speaker_labels: z
119
+ .boolean()
120
+ .default(false)
121
+ .describe(`
122
+ When enabled, Transloadit asks the transcription provider to distinguish different speakers. JSON and meta output can then include \`speaker\` labels such as \`"speaker_1"\` on individual words, plus grouped \`segments\` by speaker. Text, SRT, and WebVTT output behavior is unchanged.
123
+
124
+ Speaker labels identify recurring voices, not real person names. Accuracy depends on audio quality, background noise, overlapping speech, and the number of speakers.
125
+ `),
126
+ max_speakers: z
127
+ .number()
128
+ .int()
129
+ .min(1)
130
+ .max(10)
131
+ .default(10)
132
+ .describe(`
133
+ The maximum number of speakers to detect when \`speaker_labels\` is enabled.
80
134
  `),
81
135
  // TODO determine the list of languages
82
136
  source_language: z
@@ -99,6 +153,7 @@ The language should be specified in the [BCP-47](https://www.rfc-editor.org/rfc/
99
153
  })
100
154
  .strict();
101
155
  export const robotSpeechTranscribeInstructionsWithHiddenFieldsSchema = robotSpeechTranscribeInstructionsSchema.extend({
156
+ model: z.enum(['whisper-large-v3']).optional(),
102
157
  provider: speechTranscribeProviderWithHiddenFieldsSchema,
103
158
  result: z
104
159
  .union([z.literal('debug'), robotSpeechTranscribeInstructionsSchema.shape.result])
@@ -1 +1 @@
1
- {"version":3,"file":"video-encode.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/video-encode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"video-encode.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/video-encode.ts"],"names":[],"mappings":"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"}
@@ -84,6 +84,8 @@ You can add text overlays to videos using FFmpeg's \`drawtext\` filter through t
84
84
  - Use the \`font\` attribute to reference a font by family name with FFmpeg's \`drawtext\`
85
85
  - FFmpeg font family names typically do not contain dashes (e.g. \`Times New Roman\`), while
86
86
  ImageMagick uses dashed names (e.g. \`Times-New-Roman\`).
87
+ - File-loading \`drawtext\` options such as \`textfile\` and \`fontfile\` are not supported. Use
88
+ inline \`text\` and a font family name instead.
87
89
  - Preserve the source audio by setting \`"codec:a": "copy"\`.
88
90
  - Position text with the \`x\` and \`y\` expressions. The example above centers the text.
89
91
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@transloadit/zod",
3
- "version": "4.3.3",
3
+ "version": "4.3.4",
4
4
  "description": "Transloadit Zod schemas",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -51,7 +51,7 @@
51
51
  "zod": "^4.4.3"
52
52
  },
53
53
  "devDependencies": {
54
- "@transloadit/types": "^4.3.2",
54
+ "@transloadit/types": "^4.3.3",
55
55
  "@types/node": "^25.8.0"
56
56
  }
57
57
  }