@transloadit/zod 4.4.0 → 4.4.1

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 (54) hide show
  1. package/dist/v3/assemblyStatus.d.ts +574 -198
  2. package/dist/v3/assemblyStatus.d.ts.map +1 -1
  3. package/dist/v3/assemblyStatus.js +17 -0
  4. package/dist/v3/index.d.ts +1 -0
  5. package/dist/v3/index.d.ts.map +1 -1
  6. package/dist/v3/index.js +1 -0
  7. package/dist/v3/robots/_index.d.ts +205 -93
  8. package/dist/v3/robots/_index.d.ts.map +1 -1
  9. package/dist/v3/robots/_index.js +8 -0
  10. package/dist/v3/robots/_instructions-primitives.d.ts +4 -4
  11. package/dist/v3/robots/_instructions-primitives.d.ts.map +1 -1
  12. package/dist/v3/robots/_instructions-primitives.js +2 -0
  13. package/dist/v3/robots/file-serve.d.ts +12 -0
  14. package/dist/v3/robots/file-serve.d.ts.map +1 -1
  15. package/dist/v3/robots/file-serve.js +9 -3
  16. package/dist/v3/robots/transloadit-import.d.ts +195 -0
  17. package/dist/v3/robots/transloadit-import.d.ts.map +1 -0
  18. package/dist/v3/robots/transloadit-import.js +107 -0
  19. package/dist/v3/robots/transloadit-store.d.ts +441 -0
  20. package/dist/v3/robots/transloadit-store.d.ts.map +1 -0
  21. package/dist/v3/robots/transloadit-store.js +68 -0
  22. package/dist/v3/robots/video-ondemand.d.ts +8 -8
  23. package/dist/v3/storageAsset.d.ts +226 -0
  24. package/dist/v3/storageAsset.d.ts.map +1 -0
  25. package/dist/v3/storageAsset.js +66 -0
  26. package/dist/v3/template.d.ts.map +1 -1
  27. package/dist/v3/template.js +5 -2
  28. package/dist/v4/assemblyStatus.d.ts +88 -0
  29. package/dist/v4/assemblyStatus.d.ts.map +1 -1
  30. package/dist/v4/assemblyStatus.js +17 -0
  31. package/dist/v4/index.d.ts +1 -0
  32. package/dist/v4/index.d.ts.map +1 -1
  33. package/dist/v4/index.js +1 -0
  34. package/dist/v4/robots/_index.d.ts +205 -93
  35. package/dist/v4/robots/_index.d.ts.map +1 -1
  36. package/dist/v4/robots/_index.js +8 -0
  37. package/dist/v4/robots/_instructions-primitives.d.ts +4 -0
  38. package/dist/v4/robots/_instructions-primitives.d.ts.map +1 -1
  39. package/dist/v4/robots/_instructions-primitives.js +2 -0
  40. package/dist/v4/robots/file-serve.d.ts +4 -0
  41. package/dist/v4/robots/file-serve.d.ts.map +1 -1
  42. package/dist/v4/robots/file-serve.js +9 -3
  43. package/dist/v4/robots/transloadit-import.d.ts +140 -0
  44. package/dist/v4/robots/transloadit-import.d.ts.map +1 -0
  45. package/dist/v4/robots/transloadit-import.js +107 -0
  46. package/dist/v4/robots/transloadit-store.d.ts +170 -0
  47. package/dist/v4/robots/transloadit-store.d.ts.map +1 -0
  48. package/dist/v4/robots/transloadit-store.js +68 -0
  49. package/dist/v4/storageAsset.d.ts +78 -0
  50. package/dist/v4/storageAsset.d.ts.map +1 -0
  51. package/dist/v4/storageAsset.js +66 -0
  52. package/dist/v4/template.d.ts.map +1 -1
  53. package/dist/v4/template.js +5 -2
  54. package/package.json +2 -2
@@ -0,0 +1,170 @@
1
+ import type { RobotMetaInput } from './_instructions-primitives.ts';
2
+ import { z } from 'zod/v4';
3
+ export declare const meta: RobotMetaInput;
4
+ export declare const robotTransloaditStoreInstructionsSchema: z.ZodObject<{
5
+ interpolate: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
6
+ false: "false";
7
+ true: "true";
8
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>, z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
9
+ false: "false";
10
+ true: "true";
11
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>>]>>;
12
+ output_meta: z.ZodOptional<z.ZodUnion<readonly [z.ZodRecord<z.ZodString, z.ZodBoolean>, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
13
+ result: z.ZodDefault<z.ZodBoolean>;
14
+ queue: z.ZodOptional<z.ZodEnum<{
15
+ batch: "batch";
16
+ }>>;
17
+ force_accept: z.ZodDefault<z.ZodBoolean>;
18
+ ignore_errors: z.ZodDefault<z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodArray<z.ZodEnum<{
19
+ meta: "meta";
20
+ execute: "execute";
21
+ }>>]>, z.ZodTransform<string[], boolean | ("meta" | "execute")[]>>>;
22
+ use: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>, z.ZodArray<z.ZodObject<{
23
+ name: z.ZodString;
24
+ fields: z.ZodOptional<z.ZodString>;
25
+ as: z.ZodOptional<z.ZodString>;
26
+ }, z.core.$strict>>]>, z.ZodObject<{
27
+ steps: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>, z.ZodArray<z.ZodObject<{
28
+ name: z.ZodString;
29
+ fields: z.ZodOptional<z.ZodString>;
30
+ as: z.ZodOptional<z.ZodString>;
31
+ }, z.core.$strict>>]>;
32
+ bundle_steps: z.ZodOptional<z.ZodBoolean>;
33
+ group_by_original: z.ZodOptional<z.ZodBoolean>;
34
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
35
+ }, z.core.$strict>]>>;
36
+ robot: z.ZodLiteral<"/transloadit/store">;
37
+ conflict_strategy: z.ZodDefault<z.ZodEnum<{
38
+ error: "error";
39
+ overwrite: "overwrite";
40
+ rename: "rename";
41
+ }>>;
42
+ path: z.ZodDefault<z.ZodString>;
43
+ }, z.core.$strict>;
44
+ export declare const robotTransloaditStoreInstructionsWithHiddenFieldsSchema: z.ZodObject<{
45
+ interpolate: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
46
+ false: "false";
47
+ true: "true";
48
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>, z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
49
+ false: "false";
50
+ true: "true";
51
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>>]>>;
52
+ output_meta: z.ZodOptional<z.ZodUnion<readonly [z.ZodRecord<z.ZodString, z.ZodBoolean>, z.ZodBoolean, z.ZodArray<z.ZodString>]>>;
53
+ queue: z.ZodOptional<z.ZodEnum<{
54
+ batch: "batch";
55
+ }>>;
56
+ force_accept: z.ZodDefault<z.ZodBoolean>;
57
+ ignore_errors: z.ZodDefault<z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodArray<z.ZodEnum<{
58
+ meta: "meta";
59
+ execute: "execute";
60
+ }>>]>, z.ZodTransform<string[], boolean | ("meta" | "execute")[]>>>;
61
+ use: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>, z.ZodArray<z.ZodObject<{
62
+ name: z.ZodString;
63
+ fields: z.ZodOptional<z.ZodString>;
64
+ as: z.ZodOptional<z.ZodString>;
65
+ }, z.core.$strict>>]>, z.ZodObject<{
66
+ steps: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>, z.ZodArray<z.ZodObject<{
67
+ name: z.ZodString;
68
+ fields: z.ZodOptional<z.ZodString>;
69
+ as: z.ZodOptional<z.ZodString>;
70
+ }, z.core.$strict>>]>;
71
+ bundle_steps: z.ZodOptional<z.ZodBoolean>;
72
+ group_by_original: z.ZodOptional<z.ZodBoolean>;
73
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
74
+ }, z.core.$strict>]>>;
75
+ robot: z.ZodLiteral<"/transloadit/store">;
76
+ conflict_strategy: z.ZodDefault<z.ZodEnum<{
77
+ error: "error";
78
+ overwrite: "overwrite";
79
+ rename: "rename";
80
+ }>>;
81
+ path: z.ZodDefault<z.ZodString>;
82
+ result: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"debug">, z.ZodDefault<z.ZodBoolean>]>>;
83
+ }, z.core.$strict>;
84
+ export type RobotTransloaditStoreInstructions = z.infer<typeof robotTransloaditStoreInstructionsSchema>;
85
+ export type RobotTransloaditStoreInstructionsWithHiddenFields = z.infer<typeof robotTransloaditStoreInstructionsWithHiddenFieldsSchema>;
86
+ export declare const interpolatableRobotTransloaditStoreInstructionsSchema: z.ZodObject<{
87
+ interpolate: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
88
+ false: "false";
89
+ true: "true";
90
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>, z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
91
+ false: "false";
92
+ true: "true";
93
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>>]>>;
94
+ 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>]>]>>;
95
+ result: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
96
+ queue: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<{
97
+ batch: "batch";
98
+ }>]>>;
99
+ force_accept: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
100
+ ignore_errors: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodArray<z.ZodEnum<{
101
+ meta: "meta";
102
+ execute: "execute";
103
+ }>>]>, z.ZodTransform<string[], boolean | ("meta" | "execute")[]>>]>>;
104
+ use: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>, z.ZodArray<z.ZodObject<{
105
+ name: z.ZodString;
106
+ fields: z.ZodOptional<z.ZodString>;
107
+ as: z.ZodOptional<z.ZodString>;
108
+ }, z.core.$strict>>]>, z.ZodObject<{
109
+ steps: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>, z.ZodArray<z.ZodObject<{
110
+ name: z.ZodString;
111
+ fields: z.ZodOptional<z.ZodString>;
112
+ as: z.ZodOptional<z.ZodString>;
113
+ }, z.core.$strict>>]>;
114
+ bundle_steps: z.ZodOptional<z.ZodBoolean>;
115
+ group_by_original: z.ZodOptional<z.ZodBoolean>;
116
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
117
+ }, z.core.$strict>]>>;
118
+ robot: z.ZodLiteral<"/transloadit/store">;
119
+ conflict_strategy: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
120
+ error: "error";
121
+ overwrite: "overwrite";
122
+ rename: "rename";
123
+ }>]>>;
124
+ path: z.ZodDefault<z.ZodString>;
125
+ }, z.core.$strict>;
126
+ export type InterpolatableRobotTransloaditStoreInstructions = InterpolatableRobotTransloaditStoreInstructionsInput;
127
+ export type InterpolatableRobotTransloaditStoreInstructionsInput = z.input<typeof interpolatableRobotTransloaditStoreInstructionsSchema>;
128
+ export declare const interpolatableRobotTransloaditStoreInstructionsWithHiddenFieldsSchema: z.ZodObject<{
129
+ interpolate: z.ZodOptional<z.ZodUnion<readonly [z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
130
+ false: "false";
131
+ true: "true";
132
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>, z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
133
+ false: "false";
134
+ true: "true";
135
+ }>]>, z.ZodTransform<boolean, boolean | "false" | "true">>>]>>;
136
+ 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>]>]>>;
137
+ queue: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodEnum<{
138
+ batch: "batch";
139
+ }>]>>;
140
+ force_accept: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
141
+ ignore_errors: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodPipe<z.ZodUnion<readonly [z.ZodBoolean, z.ZodArray<z.ZodEnum<{
142
+ meta: "meta";
143
+ execute: "execute";
144
+ }>>]>, z.ZodTransform<string[], boolean | ("meta" | "execute")[]>>]>>;
145
+ use: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>, z.ZodArray<z.ZodObject<{
146
+ name: z.ZodString;
147
+ fields: z.ZodOptional<z.ZodString>;
148
+ as: z.ZodOptional<z.ZodString>;
149
+ }, z.core.$strict>>]>, z.ZodObject<{
150
+ steps: z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>, z.ZodArray<z.ZodObject<{
151
+ name: z.ZodString;
152
+ fields: z.ZodOptional<z.ZodString>;
153
+ as: z.ZodOptional<z.ZodString>;
154
+ }, z.core.$strict>>]>;
155
+ bundle_steps: z.ZodOptional<z.ZodBoolean>;
156
+ group_by_original: z.ZodOptional<z.ZodBoolean>;
157
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
158
+ }, z.core.$strict>]>>;
159
+ robot: z.ZodLiteral<"/transloadit/store">;
160
+ conflict_strategy: z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodEnum<{
161
+ error: "error";
162
+ overwrite: "overwrite";
163
+ rename: "rename";
164
+ }>]>>;
165
+ path: z.ZodDefault<z.ZodString>;
166
+ result: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodUnion<[z.ZodString, z.ZodLiteral<"debug">]>, z.ZodDefault<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>]>>;
167
+ }, z.core.$strict>;
168
+ export type InterpolatableRobotTransloaditStoreInstructionsWithHiddenFields = InterpolatableRobotTransloaditStoreInstructionsWithHiddenFieldsInput;
169
+ export type InterpolatableRobotTransloaditStoreInstructionsWithHiddenFieldsInput = z.input<typeof interpolatableRobotTransloaditStoreInstructionsWithHiddenFieldsSchema>;
170
+ //# sourceMappingURL=transloadit-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transloadit-store.d.ts","sourceRoot":"","sources":["../../../src/v4/robots/transloadit-store.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,cAkClB,CAAA;AAED,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAuBzC,CAAA;AAEX,eAAO,MAAM,uDAAuD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAKhE,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,GACzE,oEAAoE,CAAA;AACtE,MAAM,MAAM,oEAAoE,GAAG,CAAC,CAAC,KAAK,CACxF,OAAO,qEAAqE,CAC7E,CAAA"}
@@ -0,0 +1,68 @@
1
+ import { z } from 'zod/v4';
2
+ import { interpolateRobot, robotBase, robotUse } from "./_instructions-primitives.js";
3
+ export const meta = {
4
+ bytescount: 10,
5
+ discount_factor: 0.1,
6
+ discount_pct: 90,
7
+ example_code: {
8
+ steps: {
9
+ stored: {
10
+ robot: '/transloadit/store',
11
+ use: ':original',
12
+ },
13
+ },
14
+ },
15
+ example_code_description: 'Store uploaded files in Transloadit Storage:',
16
+ has_small_icon: true,
17
+ isAllowedForUrlTransform: false,
18
+ isInternal: false,
19
+ minimum_charge: 0,
20
+ name: 'TransloaditStoreRobot',
21
+ output_factor: 1,
22
+ override_lvl1: 'File Exporting',
23
+ priceFactor: 10,
24
+ purpose_sentence: 'stores files privately in Transloadit Storage',
25
+ purpose_verb: 'export',
26
+ purpose_word: 'Transloadit Storage',
27
+ purpose_words: 'Store files in Transloadit Storage',
28
+ queueSlotCount: 2,
29
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
30
+ service_slug: 'file-exporting',
31
+ slot_count: 2,
32
+ stage: 'beta',
33
+ title: 'Store files in Transloadit Storage',
34
+ trackOutputFileSize: true,
35
+ typical_file_size_mb: 1.2,
36
+ typical_file_type: 'file',
37
+ };
38
+ export const robotTransloaditStoreInstructionsSchema = robotBase
39
+ .merge(robotUse)
40
+ .extend({
41
+ robot: z.literal('/transloadit/store').describe(`
42
+ Stores each input privately in Transloadit Storage.
43
+ `),
44
+ conflict_strategy: z
45
+ .enum(['error', 'overwrite', 'rename'])
46
+ .default('error')
47
+ .describe(`
48
+ Chooses how to handle an existing destination. By default, an occupied path fails. Select
49
+ \`rename\` to allocate a different filename, or \`overwrite\` to create a new version of the
50
+ existing asset. Always save the returned asset identity, version and final path.
51
+ `),
52
+ path: z
53
+ .string()
54
+ .default('${file.url_name}')
55
+ .describe(`
56
+ Sets the destination path inside your Transloadit Storage workspace, relative to its root: a
57
+ filename, or folders and a filename such as \`website/hero.jpg\`. Folders that do not exist yet
58
+ are created.
59
+ `),
60
+ })
61
+ .strict();
62
+ export const robotTransloaditStoreInstructionsWithHiddenFieldsSchema = robotTransloaditStoreInstructionsSchema.extend({
63
+ result: z
64
+ .union([z.literal('debug'), robotTransloaditStoreInstructionsSchema.shape.result])
65
+ .optional(),
66
+ });
67
+ export const interpolatableRobotTransloaditStoreInstructionsSchema = interpolateRobot(robotTransloaditStoreInstructionsSchema);
68
+ export const interpolatableRobotTransloaditStoreInstructionsWithHiddenFieldsSchema = interpolateRobot(robotTransloaditStoreInstructionsWithHiddenFieldsSchema);
@@ -0,0 +1,78 @@
1
+ import { z } from 'zod/v4';
2
+ /** Maximum normalized Storage path length supported by the catalog schema. */
3
+ export declare const damPathMaxCodePoints = 512;
4
+ /** Canonical path and JSON representation of a 128-bit Storage identifier. */
5
+ export declare const damIdPattern: RegExp;
6
+ /** Canonical public Storage asset, version and folder identifier. */
7
+ export declare const damIdSchema: z.ZodString;
8
+ /** A retained version of a live Workspace asset, independent of its mutable location. */
9
+ export declare const storedAssetSchema: z.ZodObject<{
10
+ workspace: z.ZodString;
11
+ asset_id: z.ZodString;
12
+ version_id: z.ZodString;
13
+ path: z.ZodString;
14
+ size: z.ZodNumber;
15
+ mime: z.ZodNullable<z.ZodString>;
16
+ md5hash: z.ZodOptional<z.ZodString>;
17
+ sha256: z.ZodOptional<z.ZodString>;
18
+ width: z.ZodOptional<z.ZodNumber>;
19
+ height: z.ZodOptional<z.ZodNumber>;
20
+ }, z.core.$strip>;
21
+ /** Store, read and recovery share this shape; image clients may enrich it with placeholders. */
22
+ export type StoredAsset = z.infer<typeof storedAssetSchema>;
23
+ /** Bounded metadata paging; cursors are the last returned, case-sensitive asset path. */
24
+ export declare const damAssetsListOptionsSchema: z.ZodObject<{
25
+ prefix: z.ZodDefault<z.ZodString>;
26
+ cursor: z.ZodOptional<z.ZodString>;
27
+ limit: z.ZodDefault<z.ZodNumber>;
28
+ }, z.core.$strip>;
29
+ /** An omitted version selects the current version; an explicit version never falls back. */
30
+ export declare const damAssetGetOptionsSchema: z.ZodObject<{
31
+ version_id: z.ZodOptional<z.ZodString>;
32
+ }, z.core.$strip>;
33
+ /** Omit the destination to rename in place; null moves to the Workspace root. */
34
+ export declare const damAssetMoveOptionsSchema: z.ZodObject<{
35
+ destination_folder_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
36
+ filename: z.ZodOptional<z.ZodString>;
37
+ }, z.core.$strip>;
38
+ export type MoveStoredAssetOptions = z.input<typeof damAssetMoveOptionsSchema>;
39
+ /** Native metadata is the same version-pinned shape returned by storing a file. */
40
+ export declare const damAssetFoundResponseSchema: z.ZodObject<{
41
+ message: z.ZodString;
42
+ ok: z.ZodLiteral<"DAM_ASSET_FOUND">;
43
+ asset: z.ZodObject<{
44
+ workspace: z.ZodString;
45
+ asset_id: z.ZodString;
46
+ version_id: z.ZodString;
47
+ path: z.ZodString;
48
+ size: z.ZodNumber;
49
+ mime: z.ZodNullable<z.ZodString>;
50
+ md5hash: z.ZodOptional<z.ZodString>;
51
+ sha256: z.ZodOptional<z.ZodString>;
52
+ width: z.ZodOptional<z.ZodNumber>;
53
+ height: z.ZodOptional<z.ZodNumber>;
54
+ }, z.core.$strip>;
55
+ }, z.core.$strict>;
56
+ /** A bounded catalog page; null means there is no next page, even in an empty Workspace. */
57
+ export declare const damAssetsListedResponseSchema: z.ZodObject<{
58
+ workspace: z.ZodString;
59
+ message: z.ZodString;
60
+ ok: z.ZodLiteral<"DAM_ASSETS_LISTED">;
61
+ assets: z.ZodArray<z.ZodObject<{
62
+ workspace: z.ZodString;
63
+ asset_id: z.ZodString;
64
+ version_id: z.ZodString;
65
+ path: z.ZodString;
66
+ size: z.ZodNumber;
67
+ mime: z.ZodNullable<z.ZodString>;
68
+ md5hash: z.ZodOptional<z.ZodString>;
69
+ sha256: z.ZodOptional<z.ZodString>;
70
+ width: z.ZodOptional<z.ZodNumber>;
71
+ height: z.ZodOptional<z.ZodNumber>;
72
+ }, z.core.$strip>>;
73
+ next_cursor: z.ZodNullable<z.ZodString>;
74
+ }, z.core.$strict>;
75
+ export type StoredAssetsPage = z.infer<typeof damAssetsListedResponseSchema>;
76
+ export type ListStoredAssetsOptions = z.input<typeof damAssetsListOptionsSchema>;
77
+ export type GetStoredAssetOptions = z.input<typeof damAssetGetOptionsSchema>;
78
+ //# sourceMappingURL=storageAsset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storageAsset.d.ts","sourceRoot":"","sources":["../../src/v4/storageAsset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAE1B,8EAA8E;AAC9E,eAAO,MAAM,oBAAoB,MAAM,CAAA;AAKvC,8EAA8E;AAC9E,eAAO,MAAM,YAAY,QAA+B,CAAA;AAExD,qEAAqE;AACrE,eAAO,MAAM,WAAW,aAG2D,CAAA;AAEnF,yFAAyF;AACzF,eAAO,MAAM,iBAAiB;;;;;;;;;;;iBAiB5B,CAAA;AAEF,gGAAgG;AAChG,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,yFAAyF;AACzF,eAAO,MAAM,0BAA0B;;;;iBAIrC,CAAA;AAEF,4FAA4F;AAC5F,eAAO,MAAM,wBAAwB;;iBAAmD,CAAA;AAExF,iFAAiF;AACjF,eAAO,MAAM,yBAAyB;;;iBAUpC,CAAA;AAEF,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE9E,mFAAmF;AACnF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;kBAM7B,CAAA;AAEX,4FAA4F;AAC5F,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;kBAQ/B,CAAA;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAC5E,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAChF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA"}
@@ -0,0 +1,66 @@
1
+ import { z } from 'zod/v4';
2
+ /** Maximum normalized Storage path length supported by the catalog schema. */
3
+ export const damPathMaxCodePoints = 512;
4
+ // A Unicode regexp counts code points and stays portable across the published Zod 3/4 schemas.
5
+ const boundedPathSchema = z.string().regex(new RegExp(`^[\\s\\S]{0,${damPathMaxCodePoints}}$`, 'u'));
6
+ /** Canonical path and JSON representation of a 128-bit Storage identifier. */
7
+ export const damIdPattern = /^[A-Za-z0-9_-]{21}[AQgw]$/u;
8
+ /** Canonical public Storage asset, version and folder identifier. */
9
+ export const damIdSchema = z
10
+ .string()
11
+ .regex(damIdPattern)
12
+ .describe('Case-sensitive, canonical 22-character Base64URL Storage identifier.');
13
+ /** A retained version of a live Workspace asset, independent of its mutable location. */
14
+ export const storedAssetSchema = z.object({
15
+ workspace: z.string().min(1),
16
+ asset_id: damIdSchema,
17
+ version_id: damIdSchema,
18
+ path: z.string().min(1),
19
+ size: z.number().int().nonnegative().max(Number.MAX_SAFE_INTEGER),
20
+ mime: z.string().nullable(),
21
+ md5hash: z
22
+ .string()
23
+ .regex(/^[a-f0-9]{32}$/u)
24
+ .optional(),
25
+ sha256: z
26
+ .string()
27
+ .regex(/^[a-f0-9]{64}$/u)
28
+ .optional(),
29
+ width: z.number().int().positive().max(Number.MAX_SAFE_INTEGER).optional(),
30
+ height: z.number().int().positive().max(Number.MAX_SAFE_INTEGER).optional(),
31
+ });
32
+ /** Bounded metadata paging; cursors are the last returned, case-sensitive asset path. */
33
+ export const damAssetsListOptionsSchema = z.object({
34
+ prefix: boundedPathSchema.default(''),
35
+ cursor: boundedPathSchema.min(1).optional(),
36
+ limit: z.number().int().min(1).max(500).default(100),
37
+ });
38
+ /** An omitted version selects the current version; an explicit version never falls back. */
39
+ export const damAssetGetOptionsSchema = z.object({ version_id: damIdSchema.optional() });
40
+ /** Omit the destination to rename in place; null moves to the Workspace root. */
41
+ export const damAssetMoveOptionsSchema = z.object({
42
+ destination_folder_id: damIdSchema.nullable().optional(),
43
+ filename: z
44
+ .string()
45
+ .regex(/^[^/\\\p{Cc}]{1,255}$/u)
46
+ .refine((name) => name.trim() === name && name !== '.' && name !== '..', 'Use a filename, not a path')
47
+ .optional(),
48
+ });
49
+ /** Native metadata is the same version-pinned shape returned by storing a file. */
50
+ export const damAssetFoundResponseSchema = z
51
+ .object({
52
+ message: z.string().min(1),
53
+ ok: z.literal('DAM_ASSET_FOUND'),
54
+ asset: storedAssetSchema,
55
+ })
56
+ .strict();
57
+ /** A bounded catalog page; null means there is no next page, even in an empty Workspace. */
58
+ export const damAssetsListedResponseSchema = z
59
+ .object({
60
+ workspace: storedAssetSchema.shape.workspace,
61
+ message: z.string().min(1),
62
+ ok: z.literal('DAM_ASSETS_LISTED'),
63
+ assets: z.array(storedAssetSchema),
64
+ next_cursor: z.string().nullable(),
65
+ })
66
+ .strict();
@@ -1 +1 @@
1
- {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/v4/template.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/v4/template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAA;AAM1B,OAAO,KAAK,EACV,YAAY,EACZ,6BAA6B,EAC9B,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAA;AAGpE,MAAM,MAAM,IAAI,GAAG,YAAY,CAAA;AAC/B,MAAM,MAAM,SAAS,GAAG,IAAI,CAAA;AAC5B,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,CAAA;AACnD,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AACxC,MAAM,MAAM,UAAU,GAAG,KAAK,CAAA;AAE9B,eAAO,MAAM,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAQQ,CAAA;AAC/C,eAAO,MAAM,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CACK,CAAA;AAC9C,eAAO,MAAM,mBAAmB,oFAAyB,CAAA;AAEzD,MAAM,MAAM,oBAAoB,GAAG,6BAA6B,CAAA;AAChE,MAAM,MAAM,yBAAyB,GAAG,oBAAoB,CAAA;AAC5D,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAA;AACxE,MAAM,MAAM,0BAA0B,GAAG,qBAAqB,CAAA;AAE9D,eAAO,MAAM,0BAA0B,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAQxB,CAAA;AAC/C,eAAO,MAAM,2BAA2B,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAC3B,CAAA;AAC9C,QAAA,MAAM,mCAAmC,oHAAyC,CAAA;AAElF,eAAO,MAAM,YAAY,mDAItB,CAAA;AAEH,eAAO,MAAM,eAAe,2CAMzB,CAAA;AAEH,MAAM,MAAM,yBAAyB,GACjC,0BAA0B,GAC1B,iBAAiB,GACjB,0BAA0B,GAC1B,iBAAiB,CAAA;AAErB,eAAO,MAAM,+BAA+B,yGAKa,CAAA;AAEzD,eAAO,MAAM,yBAAyB;;;;;IAKnC,CAAA;AAEH,eAAO,MAAM,gBAAgB,4BAK1B,CAAA;AAEH,eAAO,MAAM,8BAA8B;;;;;;;;iBAsDzC,CAAA;AAuBF,eAAO,MAAM,0BAA0B;;;;;;;;;;;WAJP,OAAO,mBAAmB;;;;;;;;;;;iBAOxD,CAAA;AAEF,eAAO,MAAM,0CAA0C;;;;;;;;;;;WATvB,OAAO,mBAAmB;;;;;;;;;;;iBAYxD,CAAA;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAC7E,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAClF,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAA;AAC1F,MAAM,MAAM,oCAAoC,GAAG,OAAO,CACxD,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAC/C,CAAA;AAED,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;kBA4BtB,CAAA;AAEX,eAAO,MAAM,uBAAuB;;;;;;;;;;kBAIzB,CAAA;AAEX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAmD1B,CAAA;AAQX,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;WACD,OAAO,mCAAmC;;;;;;;;;;;;;;;;;;;;;;;;;iBAoCxF,CAAA;AAEF,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oCAAoC,CAAC,CAAA;AACjG,MAAM,MAAM,mCAAmC,GAAG,CAAC,CAAC,KAAK,CACvD,OAAO,oCAAoC,CAC5C,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod/v4';
2
2
  import { robotsSchema, robotsWithHiddenBotsAndFieldsSchema, } from "./robots/_index.js";
3
+ import { refineTransloaditImportSelector } from "./robots/transloadit-import.js";
3
4
  export const stepSchema = z
4
5
  .object({
5
6
  // This is a hack to get nicer robot hover messages in editors.
@@ -7,7 +8,8 @@ export const stepSchema = z
7
8
  .string()
8
9
  .describe('Identifier of the [robot](https://transloadit.com/docs/robots/) to execute'),
9
10
  })
10
- .and(robotsSchema);
11
+ .and(robotsSchema)
12
+ .superRefine(refineTransloaditImportSelector);
11
13
  export const stepsSchema = z.record(z.string(), stepSchema)
12
14
  .describe('Contains Assembly Instructions.');
13
15
  export const optionalStepsSchema = stepsSchema.optional();
@@ -18,7 +20,8 @@ export const stepSchemaWithHiddenFields = z
18
20
  .string()
19
21
  .describe('Identifier of the [robot](https://transloadit.com/docs/robots/) to execute'),
20
22
  })
21
- .and(robotsWithHiddenBotsAndFieldsSchema);
23
+ .and(robotsWithHiddenBotsAndFieldsSchema)
24
+ .superRefine(refineTransloaditImportSelector);
22
25
  export const stepsSchemaWithHiddenFields = z.record(z.string(), stepSchemaWithHiddenFields)
23
26
  .describe('Contains Assembly Instructions.');
24
27
  const optionalStepsWithHiddenFieldsSchema = stepsSchemaWithHiddenFields.optional();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@transloadit/zod",
3
- "version": "4.4.0",
3
+ "version": "4.4.1",
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.4.0",
54
+ "@transloadit/types": "^4.4.1",
55
55
  "@types/node": "^25.8.0"
56
56
  }
57
57
  }