@anuragpal02/zcl-contracts 0.32.0 → 0.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/client.d.ts CHANGED
@@ -9,6 +9,7 @@ import { guidelineSetListResponseSchema, guidelineSetResponseSchema, type Attach
9
9
  import { type CreateGenerationJobRequest, type CreatePanelSetRequest, type CreatePanelSetResponse, type CreateSmartVideoRequest, type CreateSmartVideoResponse, type CreateVideoLoopRequest, type CreateVideoUpscaleRequest, type EditGenerationJobRequest, type GenerationJobResponse, type GenerationJobStatus, type GenerationJobType, type ListGenerationJobsResponse } from './generation.js';
10
10
  import { type DescribeImageRequest, type DescribeImageResponse } from './assistant.js';
11
11
  import { type CreateLoopToolJobRequest, type CreateLoopToolSourceUploadRequest, type CreateLoopToolSourceUploadResponse, type FinalizeLoopToolSourceUploadRequest, type FinalizeLoopToolSourceUploadResponse, type LoopToolJobResponse } from './loop-tools.js';
12
+ import { type CreateFrameBatchRequest, type DeleteFrameResponse, type FrameBatch, type FrameReferenceUpload, type FrameVariant, type ListFramesQuery, type ListFramesResponse } from './frame-iterator.js';
12
13
  import { type AdminAdjustCreditsRequest, type AdminAdjustCreditsResponse, type AdminJobDetailResponse, type AdminJobStatus, type AdminMeResponse, type AdminUsageResponse, type AdminUserDetailResponse, type AdminWorkspaceDetailResponse, type ListAdminAuditResponse, type ListAdminJobsResponse, type ListAdminUsersResponse, type ListAdminWorkspacesResponse, type SetPlatformAdminRequest, type SetPlatformAdminResponse, type SetUserDisabledRequest, type SetUserDisabledResponse, type StepUpStartResponse, type StepUpVerifyResponse } from './admin.js';
13
14
  type FetchLike = (request: Request) => Promise<Response>;
14
15
  export type ZclApiClientOptions = {
@@ -139,6 +140,14 @@ export declare function createZclApiClient(options: ZclApiClientOptions): {
139
140
  getJob(workspaceId: string, jobId: string): Promise<LoopToolJobResponse>;
140
141
  contentUrl(workspaceId: string, assetId: string): string;
141
142
  };
143
+ frameIterator: {
144
+ uploadReference(workspaceId: string, file: Blob, filename: string): Promise<FrameReferenceUpload>;
145
+ createBatch(workspaceId: string, input: CreateFrameBatchRequest, idempotencyKey: string): Promise<FrameBatch>;
146
+ getBatch(workspaceId: string, batchId: string): Promise<FrameBatch>;
147
+ listFrames(workspaceId: string, options?: ListFramesQuery): Promise<ListFramesResponse>;
148
+ download(workspaceId: string, iterationId: string, variant: FrameVariant): Promise<Response>;
149
+ delete(workspaceId: string, iterationId: string): Promise<DeleteFrameResponse>;
150
+ };
142
151
  credits: {
143
152
  get(workspaceId: string): Promise<CreditBalanceResponse>;
144
153
  };
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -9,6 +9,7 @@ import { attachGuidelineSetLogoRequestSchema, createGuidelineSetRequestSchema, g
9
9
  import { createGenerationJobRequestSchema, createPanelSetRequestSchema, createPanelSetResponseSchema, createSmartVideoRequestSchema, createSmartVideoResponseSchema, createVideoLoopRequestSchema, createVideoUpscaleRequestSchema, editGenerationJobRequestSchema, generationJobResponseSchema, listGenerationJobsResponseSchema } from './generation.js';
10
10
  import { describeImageRequestSchema, describeImageResponseSchema } from './assistant.js';
11
11
  import { createLoopToolJobRequestSchema, createLoopToolSourceUploadRequestSchema, createLoopToolSourceUploadResponseSchema, finalizeLoopToolSourceUploadRequestSchema, finalizeLoopToolSourceUploadResponseSchema, loopToolJobResponseSchema } from './loop-tools.js';
12
+ import { createFrameBatchRequestSchema, deleteFrameResponseSchema, frameBatchSchema, frameReferenceUploadSchema, frameVariantSchema, listFramesQuerySchema, listFramesResponseSchema } from './frame-iterator.js';
12
13
  import { adminAdjustCreditsRequestSchema, adminAdjustCreditsResponseSchema, adminJobDetailResponseSchema, adminMeResponseSchema, adminUsageResponseSchema, adminUserDetailResponseSchema, adminWorkspaceDetailResponseSchema, listAdminAuditResponseSchema, listAdminJobsResponseSchema, listAdminUsersResponseSchema, listAdminWorkspacesResponseSchema, setPlatformAdminRequestSchema, setPlatformAdminResponseSchema, setUserDisabledRequestSchema, setUserDisabledResponseSchema, stepUpStartResponseSchema, stepUpVerifyRequestSchema, stepUpVerifyResponseSchema } from './admin.js';
13
14
  const workspaceListResponseSchema = listResponseSchema(workspaceSchema.extend({
14
15
  membership: workspaceMembershipSchema
@@ -80,6 +81,41 @@ export function createZclApiClient(options) {
80
81
  }
81
82
  return parseResponse(schema, responseBody, response.status);
82
83
  }
84
+ async function requestFormData(path, schema, formData, init = {}) {
85
+ const headers = new Headers(init.headers);
86
+ const method = (init.method ?? 'POST').toUpperCase();
87
+ if (method !== 'GET' && method !== 'HEAD') {
88
+ headers.set('x-zcl-csrf', '1');
89
+ }
90
+ const response = await fetcher(new Request(joinUrl(options.baseUrl, path), {
91
+ ...init,
92
+ method,
93
+ headers,
94
+ body: formData,
95
+ credentials: 'include'
96
+ }));
97
+ const responseBody = await readJson(response);
98
+ if (!response.ok) {
99
+ const error = errorResponseSchema.safeParse(responseBody);
100
+ if (error.success) {
101
+ throw new ZclApiError(error.data.error.code, error.data.error.message, response.status, error.data.error.requestId);
102
+ }
103
+ throw new ZclApiError('internal_error', 'API request failed', response.status);
104
+ }
105
+ return parseResponse(schema, responseBody, response.status);
106
+ }
107
+ async function requestDownload(path) {
108
+ const response = await fetcher(new Request(joinUrl(options.baseUrl, path), { credentials: 'include' }));
109
+ if (response.ok) {
110
+ return response;
111
+ }
112
+ const responseBody = await readJson(response);
113
+ const error = errorResponseSchema.safeParse(responseBody);
114
+ if (error.success) {
115
+ throw new ZclApiError(error.data.error.code, error.data.error.message, response.status, error.data.error.requestId);
116
+ }
117
+ throw new ZclApiError('internal_error', 'API request failed', response.status);
118
+ }
83
119
  return {
84
120
  auth: {
85
121
  signup(input) {
@@ -402,6 +438,43 @@ export function createZclApiClient(options) {
402
438
  return joinUrl(options.baseUrl, `/workspaces/${workspaceId}/tools/loop/assets/${assetId}/content`);
403
439
  }
404
440
  },
441
+ frameIterator: {
442
+ uploadReference(workspaceId, file, filename) {
443
+ const formData = new FormData();
444
+ formData.append('file', file, filename);
445
+ return requestFormData(`/workspaces/${workspaceId}/tools/frame-iterator/references`, frameReferenceUploadSchema, formData, { method: 'POST' });
446
+ },
447
+ createBatch(workspaceId, input, idempotencyKey) {
448
+ return request(`/workspaces/${workspaceId}/tools/frame-iterator/batches`, frameBatchSchema, {
449
+ method: 'POST',
450
+ headers: { 'idempotency-key': idempotencyKey },
451
+ body: createFrameBatchRequestSchema.parse(input)
452
+ });
453
+ },
454
+ getBatch(workspaceId, batchId) {
455
+ return request(`/workspaces/${workspaceId}/tools/frame-iterator/batches/${batchId}`, frameBatchSchema);
456
+ },
457
+ listFrames(workspaceId, options = {}) {
458
+ const queryOptions = listFramesQuerySchema.parse(options);
459
+ const params = new URLSearchParams();
460
+ if (queryOptions.limit !== undefined) {
461
+ params.set('limit', String(queryOptions.limit));
462
+ }
463
+ if (queryOptions.cursor !== undefined) {
464
+ params.set('cursor', queryOptions.cursor);
465
+ }
466
+ const query = params.toString() ? `?${params.toString()}` : '';
467
+ return request(`/workspaces/${workspaceId}/tools/frame-iterator/frames${query}`, listFramesResponseSchema);
468
+ },
469
+ download(workspaceId, iterationId, variant) {
470
+ return requestDownload(`/workspaces/${workspaceId}/tools/frame-iterator/frames/${iterationId}/${frameVariantSchema.parse(variant)}`);
471
+ },
472
+ delete(workspaceId, iterationId) {
473
+ return request(`/workspaces/${workspaceId}/tools/frame-iterator/frames/${iterationId}`, deleteFrameResponseSchema, {
474
+ method: 'DELETE'
475
+ });
476
+ }
477
+ },
405
478
  credits: {
406
479
  get(workspaceId) {
407
480
  return request(`/workspaces/${workspaceId}/credits`, creditBalanceResponseSchema);
@@ -0,0 +1,421 @@
1
+ import { z } from 'zod';
2
+ export declare const frameMaterialSchema: z.ZodEnum<{
3
+ custom: "custom";
4
+ metal: "metal";
5
+ wood: "wood";
6
+ neon: "neon";
7
+ marble: "marble";
8
+ glass: "glass";
9
+ fabric: "fabric";
10
+ organic: "organic";
11
+ }>;
12
+ export declare const frameThicknessSchema: z.ZodEnum<{
13
+ medium: "medium";
14
+ thin: "thin";
15
+ thick: "thick";
16
+ }>;
17
+ export declare const frameShapeSchema: z.ZodEnum<{
18
+ custom: "custom";
19
+ organic: "organic";
20
+ rectangle: "rectangle";
21
+ rounded: "rounded";
22
+ }>;
23
+ export declare const frameVariantSchema: z.ZodEnum<{
24
+ green: "green";
25
+ transparent: "transparent";
26
+ }>;
27
+ export declare const frameIterationStatusSchema: z.ZodEnum<{
28
+ deleted: "deleted";
29
+ queued: "queued";
30
+ running: "running";
31
+ succeeded: "succeeded";
32
+ failed: "failed";
33
+ retry_wait: "retry_wait";
34
+ deleting: "deleting";
35
+ }>;
36
+ export declare const frameIterationPhaseSchema: z.ZodEnum<{
37
+ dispatching: "dispatching";
38
+ generating: "generating";
39
+ normalizing: "normalizing";
40
+ deriving_transparency: "deriving_transparency";
41
+ storing: "storing";
42
+ finalizing: "finalizing";
43
+ }>;
44
+ export declare const frameFailureCodeSchema: z.ZodEnum<{
45
+ REFERENCE_INVALID: "REFERENCE_INVALID";
46
+ REFERENCE_TOO_LARGE: "REFERENCE_TOO_LARGE";
47
+ REFERENCE_EXPIRED: "REFERENCE_EXPIRED";
48
+ CHROMA_COLOR_CONFLICT: "CHROMA_COLOR_CONFLICT";
49
+ INSUFFICIENT_CREDITS: "INSUFFICIENT_CREDITS";
50
+ CONTENT_BLOCKED: "CONTENT_BLOCKED";
51
+ PROVIDER_RETRYING: "PROVIDER_RETRYING";
52
+ PROVIDER_UNAVAILABLE: "PROVIDER_UNAVAILABLE";
53
+ PROVIDER_OUTPUT_INVALID: "PROVIDER_OUTPUT_INVALID";
54
+ OPENING_INVALID: "OPENING_INVALID";
55
+ OUTPUT_STORAGE_FAILED: "OUTPUT_STORAGE_FAILED";
56
+ INTERNAL_FAILED: "INTERNAL_FAILED";
57
+ }>;
58
+ /** Whether a #RRGGBB frame colour would conflict with the removable green opening. */
59
+ export declare function isChromaConflictingColor(hex: string): boolean;
60
+ export declare const frameSettingsSchema: z.ZodObject<{
61
+ color: z.ZodString;
62
+ material: z.ZodEnum<{
63
+ custom: "custom";
64
+ metal: "metal";
65
+ wood: "wood";
66
+ neon: "neon";
67
+ marble: "marble";
68
+ glass: "glass";
69
+ fabric: "fabric";
70
+ organic: "organic";
71
+ }>;
72
+ customMaterial: z.ZodOptional<z.ZodString>;
73
+ thickness: z.ZodEnum<{
74
+ medium: "medium";
75
+ thin: "thin";
76
+ thick: "thick";
77
+ }>;
78
+ shape: z.ZodEnum<{
79
+ custom: "custom";
80
+ organic: "organic";
81
+ rectangle: "rectangle";
82
+ rounded: "rounded";
83
+ }>;
84
+ customShape: z.ZodOptional<z.ZodString>;
85
+ additionalDirection: z.ZodOptional<z.ZodString>;
86
+ }, z.core.$strict>;
87
+ export declare const createFrameBatchRequestSchema: z.ZodObject<{
88
+ referenceUploadId: z.ZodString;
89
+ iterationCount: z.ZodNumber;
90
+ settings: z.ZodObject<{
91
+ color: z.ZodString;
92
+ material: z.ZodEnum<{
93
+ custom: "custom";
94
+ metal: "metal";
95
+ wood: "wood";
96
+ neon: "neon";
97
+ marble: "marble";
98
+ glass: "glass";
99
+ fabric: "fabric";
100
+ organic: "organic";
101
+ }>;
102
+ customMaterial: z.ZodOptional<z.ZodString>;
103
+ thickness: z.ZodEnum<{
104
+ medium: "medium";
105
+ thin: "thin";
106
+ thick: "thick";
107
+ }>;
108
+ shape: z.ZodEnum<{
109
+ custom: "custom";
110
+ organic: "organic";
111
+ rectangle: "rectangle";
112
+ rounded: "rounded";
113
+ }>;
114
+ customShape: z.ZodOptional<z.ZodString>;
115
+ additionalDirection: z.ZodOptional<z.ZodString>;
116
+ }, z.core.$strict>;
117
+ }, z.core.$strict>;
118
+ export declare const frameReferenceUploadSchema: z.ZodObject<{
119
+ uploadId: z.ZodString;
120
+ expiresAt: z.ZodString;
121
+ original: z.ZodObject<{
122
+ mimeType: z.ZodEnum<{
123
+ "image/png": "image/png";
124
+ "image/jpeg": "image/jpeg";
125
+ "image/webp": "image/webp";
126
+ }>;
127
+ byteSize: z.ZodNumber;
128
+ width: z.ZodNumber;
129
+ height: z.ZodNumber;
130
+ }, z.core.$strict>;
131
+ }, z.core.$strict>;
132
+ export declare const frameIterationSchema: z.ZodObject<{
133
+ id: z.ZodString;
134
+ batchId: z.ZodString;
135
+ iterationIndex: z.ZodNumber;
136
+ status: z.ZodEnum<{
137
+ deleted: "deleted";
138
+ queued: "queued";
139
+ running: "running";
140
+ succeeded: "succeeded";
141
+ failed: "failed";
142
+ retry_wait: "retry_wait";
143
+ deleting: "deleting";
144
+ }>;
145
+ phase: z.ZodEnum<{
146
+ dispatching: "dispatching";
147
+ generating: "generating";
148
+ normalizing: "normalizing";
149
+ deriving_transparency: "deriving_transparency";
150
+ storing: "storing";
151
+ finalizing: "finalizing";
152
+ }>;
153
+ attemptCount: z.ZodNumber;
154
+ failureCode: z.ZodNullable<z.ZodEnum<{
155
+ REFERENCE_INVALID: "REFERENCE_INVALID";
156
+ REFERENCE_TOO_LARGE: "REFERENCE_TOO_LARGE";
157
+ REFERENCE_EXPIRED: "REFERENCE_EXPIRED";
158
+ CHROMA_COLOR_CONFLICT: "CHROMA_COLOR_CONFLICT";
159
+ INSUFFICIENT_CREDITS: "INSUFFICIENT_CREDITS";
160
+ CONTENT_BLOCKED: "CONTENT_BLOCKED";
161
+ PROVIDER_RETRYING: "PROVIDER_RETRYING";
162
+ PROVIDER_UNAVAILABLE: "PROVIDER_UNAVAILABLE";
163
+ PROVIDER_OUTPUT_INVALID: "PROVIDER_OUTPUT_INVALID";
164
+ OPENING_INVALID: "OPENING_INVALID";
165
+ OUTPUT_STORAGE_FAILED: "OUTPUT_STORAGE_FAILED";
166
+ INTERNAL_FAILED: "INTERNAL_FAILED";
167
+ }>>;
168
+ settings: z.ZodObject<{
169
+ color: z.ZodString;
170
+ material: z.ZodEnum<{
171
+ custom: "custom";
172
+ metal: "metal";
173
+ wood: "wood";
174
+ neon: "neon";
175
+ marble: "marble";
176
+ glass: "glass";
177
+ fabric: "fabric";
178
+ organic: "organic";
179
+ }>;
180
+ customMaterial: z.ZodOptional<z.ZodString>;
181
+ thickness: z.ZodEnum<{
182
+ medium: "medium";
183
+ thin: "thin";
184
+ thick: "thick";
185
+ }>;
186
+ shape: z.ZodEnum<{
187
+ custom: "custom";
188
+ organic: "organic";
189
+ rectangle: "rectangle";
190
+ rounded: "rounded";
191
+ }>;
192
+ customShape: z.ZodOptional<z.ZodString>;
193
+ additionalDirection: z.ZodOptional<z.ZodString>;
194
+ }, z.core.$strict>;
195
+ width: z.ZodNullable<z.ZodNumber>;
196
+ height: z.ZodNullable<z.ZodNumber>;
197
+ startedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
198
+ completedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
199
+ createdAt: z.ZodString;
200
+ updatedAt: z.ZodString;
201
+ downloads: z.ZodObject<{
202
+ green: z.ZodBoolean;
203
+ transparent: z.ZodBoolean;
204
+ }, z.core.$strict>;
205
+ }, z.core.$strict>;
206
+ export declare const frameBatchSchema: z.ZodObject<{
207
+ id: z.ZodString;
208
+ requestedCount: z.ZodNumber;
209
+ createdAt: z.ZodString;
210
+ iterations: z.ZodArray<z.ZodObject<{
211
+ id: z.ZodString;
212
+ batchId: z.ZodString;
213
+ iterationIndex: z.ZodNumber;
214
+ status: z.ZodEnum<{
215
+ deleted: "deleted";
216
+ queued: "queued";
217
+ running: "running";
218
+ succeeded: "succeeded";
219
+ failed: "failed";
220
+ retry_wait: "retry_wait";
221
+ deleting: "deleting";
222
+ }>;
223
+ phase: z.ZodEnum<{
224
+ dispatching: "dispatching";
225
+ generating: "generating";
226
+ normalizing: "normalizing";
227
+ deriving_transparency: "deriving_transparency";
228
+ storing: "storing";
229
+ finalizing: "finalizing";
230
+ }>;
231
+ attemptCount: z.ZodNumber;
232
+ failureCode: z.ZodNullable<z.ZodEnum<{
233
+ REFERENCE_INVALID: "REFERENCE_INVALID";
234
+ REFERENCE_TOO_LARGE: "REFERENCE_TOO_LARGE";
235
+ REFERENCE_EXPIRED: "REFERENCE_EXPIRED";
236
+ CHROMA_COLOR_CONFLICT: "CHROMA_COLOR_CONFLICT";
237
+ INSUFFICIENT_CREDITS: "INSUFFICIENT_CREDITS";
238
+ CONTENT_BLOCKED: "CONTENT_BLOCKED";
239
+ PROVIDER_RETRYING: "PROVIDER_RETRYING";
240
+ PROVIDER_UNAVAILABLE: "PROVIDER_UNAVAILABLE";
241
+ PROVIDER_OUTPUT_INVALID: "PROVIDER_OUTPUT_INVALID";
242
+ OPENING_INVALID: "OPENING_INVALID";
243
+ OUTPUT_STORAGE_FAILED: "OUTPUT_STORAGE_FAILED";
244
+ INTERNAL_FAILED: "INTERNAL_FAILED";
245
+ }>>;
246
+ settings: z.ZodObject<{
247
+ color: z.ZodString;
248
+ material: z.ZodEnum<{
249
+ custom: "custom";
250
+ metal: "metal";
251
+ wood: "wood";
252
+ neon: "neon";
253
+ marble: "marble";
254
+ glass: "glass";
255
+ fabric: "fabric";
256
+ organic: "organic";
257
+ }>;
258
+ customMaterial: z.ZodOptional<z.ZodString>;
259
+ thickness: z.ZodEnum<{
260
+ medium: "medium";
261
+ thin: "thin";
262
+ thick: "thick";
263
+ }>;
264
+ shape: z.ZodEnum<{
265
+ custom: "custom";
266
+ organic: "organic";
267
+ rectangle: "rectangle";
268
+ rounded: "rounded";
269
+ }>;
270
+ customShape: z.ZodOptional<z.ZodString>;
271
+ additionalDirection: z.ZodOptional<z.ZodString>;
272
+ }, z.core.$strict>;
273
+ width: z.ZodNullable<z.ZodNumber>;
274
+ height: z.ZodNullable<z.ZodNumber>;
275
+ startedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
276
+ completedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
277
+ createdAt: z.ZodString;
278
+ updatedAt: z.ZodString;
279
+ downloads: z.ZodObject<{
280
+ green: z.ZodBoolean;
281
+ transparent: z.ZodBoolean;
282
+ }, z.core.$strict>;
283
+ }, z.core.$strict>>;
284
+ }, z.core.$strict>;
285
+ export declare const savedFrameSchema: z.ZodObject<{
286
+ id: z.ZodString;
287
+ batchId: z.ZodString;
288
+ iterationIndex: z.ZodNumber;
289
+ phase: z.ZodEnum<{
290
+ dispatching: "dispatching";
291
+ generating: "generating";
292
+ normalizing: "normalizing";
293
+ deriving_transparency: "deriving_transparency";
294
+ storing: "storing";
295
+ finalizing: "finalizing";
296
+ }>;
297
+ attemptCount: z.ZodNumber;
298
+ settings: z.ZodObject<{
299
+ color: z.ZodString;
300
+ material: z.ZodEnum<{
301
+ custom: "custom";
302
+ metal: "metal";
303
+ wood: "wood";
304
+ neon: "neon";
305
+ marble: "marble";
306
+ glass: "glass";
307
+ fabric: "fabric";
308
+ organic: "organic";
309
+ }>;
310
+ customMaterial: z.ZodOptional<z.ZodString>;
311
+ thickness: z.ZodEnum<{
312
+ medium: "medium";
313
+ thin: "thin";
314
+ thick: "thick";
315
+ }>;
316
+ shape: z.ZodEnum<{
317
+ custom: "custom";
318
+ organic: "organic";
319
+ rectangle: "rectangle";
320
+ rounded: "rounded";
321
+ }>;
322
+ customShape: z.ZodOptional<z.ZodString>;
323
+ additionalDirection: z.ZodOptional<z.ZodString>;
324
+ }, z.core.$strict>;
325
+ startedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
326
+ completedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
327
+ createdAt: z.ZodString;
328
+ updatedAt: z.ZodString;
329
+ status: z.ZodLiteral<"succeeded">;
330
+ failureCode: z.ZodNull;
331
+ width: z.ZodNumber;
332
+ height: z.ZodNumber;
333
+ downloads: z.ZodObject<{
334
+ green: z.ZodLiteral<true>;
335
+ transparent: z.ZodLiteral<true>;
336
+ }, z.core.$strict>;
337
+ }, z.core.$strict>;
338
+ export declare const listFramesResponseSchema: z.ZodObject<{
339
+ items: z.ZodArray<z.ZodObject<{
340
+ id: z.ZodString;
341
+ batchId: z.ZodString;
342
+ iterationIndex: z.ZodNumber;
343
+ phase: z.ZodEnum<{
344
+ dispatching: "dispatching";
345
+ generating: "generating";
346
+ normalizing: "normalizing";
347
+ deriving_transparency: "deriving_transparency";
348
+ storing: "storing";
349
+ finalizing: "finalizing";
350
+ }>;
351
+ attemptCount: z.ZodNumber;
352
+ settings: z.ZodObject<{
353
+ color: z.ZodString;
354
+ material: z.ZodEnum<{
355
+ custom: "custom";
356
+ metal: "metal";
357
+ wood: "wood";
358
+ neon: "neon";
359
+ marble: "marble";
360
+ glass: "glass";
361
+ fabric: "fabric";
362
+ organic: "organic";
363
+ }>;
364
+ customMaterial: z.ZodOptional<z.ZodString>;
365
+ thickness: z.ZodEnum<{
366
+ medium: "medium";
367
+ thin: "thin";
368
+ thick: "thick";
369
+ }>;
370
+ shape: z.ZodEnum<{
371
+ custom: "custom";
372
+ organic: "organic";
373
+ rectangle: "rectangle";
374
+ rounded: "rounded";
375
+ }>;
376
+ customShape: z.ZodOptional<z.ZodString>;
377
+ additionalDirection: z.ZodOptional<z.ZodString>;
378
+ }, z.core.$strict>;
379
+ startedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
380
+ completedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
381
+ createdAt: z.ZodString;
382
+ updatedAt: z.ZodString;
383
+ status: z.ZodLiteral<"succeeded">;
384
+ failureCode: z.ZodNull;
385
+ width: z.ZodNumber;
386
+ height: z.ZodNumber;
387
+ downloads: z.ZodObject<{
388
+ green: z.ZodLiteral<true>;
389
+ transparent: z.ZodLiteral<true>;
390
+ }, z.core.$strict>;
391
+ }, z.core.$strict>>;
392
+ nextCursor: z.ZodNullable<z.ZodString>;
393
+ }, z.core.$strict>;
394
+ export declare const listFramesQuerySchema: z.ZodObject<{
395
+ cursor: z.ZodOptional<z.ZodString>;
396
+ limit: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
397
+ }, z.core.$strict>;
398
+ export declare const deleteFrameResponseSchema: z.ZodObject<{
399
+ id: z.ZodString;
400
+ status: z.ZodEnum<{
401
+ deleted: "deleted";
402
+ deleting: "deleting";
403
+ }>;
404
+ }, z.core.$strict>;
405
+ export type FrameMaterial = z.infer<typeof frameMaterialSchema>;
406
+ export type FrameThickness = z.infer<typeof frameThicknessSchema>;
407
+ export type FrameShape = z.infer<typeof frameShapeSchema>;
408
+ export type FrameVariant = z.infer<typeof frameVariantSchema>;
409
+ export type FrameIterationStatus = z.infer<typeof frameIterationStatusSchema>;
410
+ export type FrameIterationPhase = z.infer<typeof frameIterationPhaseSchema>;
411
+ export type FrameFailureCode = z.infer<typeof frameFailureCodeSchema>;
412
+ export type FrameSettings = z.infer<typeof frameSettingsSchema>;
413
+ export type CreateFrameBatchRequest = z.infer<typeof createFrameBatchRequestSchema>;
414
+ export type FrameReferenceUpload = z.infer<typeof frameReferenceUploadSchema>;
415
+ export type FrameIteration = z.infer<typeof frameIterationSchema>;
416
+ export type FrameBatch = z.infer<typeof frameBatchSchema>;
417
+ export type SavedFrame = z.infer<typeof savedFrameSchema>;
418
+ export type ListFramesResponse = z.infer<typeof listFramesResponseSchema>;
419
+ export type ListFramesQuery = z.infer<typeof listFramesQuerySchema>;
420
+ export type DeleteFrameResponse = z.infer<typeof deleteFrameResponseSchema>;
421
+ //# sourceMappingURL=frame-iterator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frame-iterator.d.ts","sourceRoot":"","sources":["../src/frame-iterator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,mBAAmB;;;;;;;;;EAAsF,CAAA;AACtH,eAAO,MAAM,oBAAoB;;;;EAAsC,CAAA;AACvE,eAAO,MAAM,gBAAgB;;;;;EAAwD,CAAA;AACrF,eAAO,MAAM,kBAAkB;;;EAAmC,CAAA;AAClE,eAAO,MAAM,0BAA0B;;;;;;;;EAQrC,CAAA;AACF,eAAO,MAAM,yBAAyB;;;;;;;EAOpC,CAAA;AACF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;EAajC,CAAA;AAMF,sFAAsF;AACtF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAS7D;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;kBAiD5B,CAAA;AAEJ,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAM/B,CAAA;AAEX,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;kBAa5B,CAAA;AAIX,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAuE7B,CAAA;AAEJ,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAOlB,CAAA;AAEX,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAQlB,CAAA;AAEX,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAK1B,CAAA;AAEX,eAAO,MAAM,qBAAqB;;;kBAKvB,CAAA;AAEX,eAAO,MAAM,yBAAyB;;;;;;kBAK3B,CAAA;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAC/D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AACjE,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AACzD,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAC7D,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAC7E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAC3E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAC/D,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA;AACnF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAC7E,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AACjE,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AACzD,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AACzD,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AACzE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AACnE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA"}
@@ -0,0 +1,223 @@
1
+ import { z } from 'zod';
2
+ import { idSchema, isoDateSchema } from './common.js';
3
+ export const frameMaterialSchema = z.enum(['metal', 'wood', 'neon', 'marble', 'glass', 'fabric', 'organic', 'custom']);
4
+ export const frameThicknessSchema = z.enum(['thin', 'medium', 'thick']);
5
+ export const frameShapeSchema = z.enum(['rectangle', 'rounded', 'organic', 'custom']);
6
+ export const frameVariantSchema = z.enum(['green', 'transparent']);
7
+ export const frameIterationStatusSchema = z.enum([
8
+ 'queued',
9
+ 'running',
10
+ 'retry_wait',
11
+ 'succeeded',
12
+ 'failed',
13
+ 'deleting',
14
+ 'deleted'
15
+ ]);
16
+ export const frameIterationPhaseSchema = z.enum([
17
+ 'dispatching',
18
+ 'generating',
19
+ 'normalizing',
20
+ 'deriving_transparency',
21
+ 'storing',
22
+ 'finalizing'
23
+ ]);
24
+ export const frameFailureCodeSchema = z.enum([
25
+ 'REFERENCE_INVALID',
26
+ 'REFERENCE_TOO_LARGE',
27
+ 'REFERENCE_EXPIRED',
28
+ 'CHROMA_COLOR_CONFLICT',
29
+ 'INSUFFICIENT_CREDITS',
30
+ 'CONTENT_BLOCKED',
31
+ 'PROVIDER_RETRYING',
32
+ 'PROVIDER_UNAVAILABLE',
33
+ 'PROVIDER_OUTPUT_INVALID',
34
+ 'OPENING_INVALID',
35
+ 'OUTPUT_STORAGE_FAILED',
36
+ 'INTERNAL_FAILED'
37
+ ]);
38
+ const hexColorSchema = z.string().regex(/^#[0-9A-Fa-f]{6}$/);
39
+ const customDirectionSchema = z.string().trim().min(1).max(120);
40
+ const additionalDirectionSchema = z.string().trim().min(1).max(1000);
41
+ /** Whether a #RRGGBB frame colour would conflict with the removable green opening. */
42
+ export function isChromaConflictingColor(hex) {
43
+ if (!/^#[0-9A-Fa-f]{6}$/.test(hex)) {
44
+ return false;
45
+ }
46
+ const red = Number.parseInt(hex.slice(1, 3), 16);
47
+ const green = Number.parseInt(hex.slice(3, 5), 16);
48
+ const blue = Number.parseInt(hex.slice(5, 7), 16);
49
+ return green >= 160 && green - red >= 60 && green - blue >= 60;
50
+ }
51
+ export const frameSettingsSchema = z
52
+ .object({
53
+ color: hexColorSchema,
54
+ material: frameMaterialSchema,
55
+ customMaterial: customDirectionSchema.optional(),
56
+ thickness: frameThicknessSchema,
57
+ shape: frameShapeSchema,
58
+ customShape: customDirectionSchema.optional(),
59
+ additionalDirection: additionalDirectionSchema.optional()
60
+ })
61
+ .strict()
62
+ .superRefine((value, context) => {
63
+ if (isChromaConflictingColor(value.color)) {
64
+ context.addIssue({
65
+ code: 'custom',
66
+ path: ['color'],
67
+ message: 'Bright chroma green is reserved for the removable opening'
68
+ });
69
+ }
70
+ if (value.material === 'custom' && value.customMaterial === undefined) {
71
+ context.addIssue({
72
+ code: 'custom',
73
+ path: ['customMaterial'],
74
+ message: 'Custom material is required when material is custom'
75
+ });
76
+ }
77
+ if (value.material !== 'custom' && value.customMaterial !== undefined) {
78
+ context.addIssue({
79
+ code: 'custom',
80
+ path: ['customMaterial'],
81
+ message: 'Custom material is only allowed when material is custom'
82
+ });
83
+ }
84
+ if (value.shape === 'custom' && value.customShape === undefined) {
85
+ context.addIssue({
86
+ code: 'custom',
87
+ path: ['customShape'],
88
+ message: 'Custom shape is required when shape is custom'
89
+ });
90
+ }
91
+ if (value.shape !== 'custom' && value.customShape !== undefined) {
92
+ context.addIssue({
93
+ code: 'custom',
94
+ path: ['customShape'],
95
+ message: 'Custom shape is only allowed when shape is custom'
96
+ });
97
+ }
98
+ });
99
+ export const createFrameBatchRequestSchema = z
100
+ .object({
101
+ referenceUploadId: idSchema,
102
+ iterationCount: z.number().int().min(1).max(4),
103
+ settings: frameSettingsSchema
104
+ })
105
+ .strict();
106
+ export const frameReferenceUploadSchema = z
107
+ .object({
108
+ uploadId: idSchema,
109
+ expiresAt: isoDateSchema,
110
+ original: z
111
+ .object({
112
+ mimeType: z.enum(['image/png', 'image/jpeg', 'image/webp']),
113
+ byteSize: z.number().int().positive(),
114
+ width: z.number().int().positive(),
115
+ height: z.number().int().positive()
116
+ })
117
+ .strict()
118
+ })
119
+ .strict();
120
+ const frameDownloadsSchema = z.object({ green: z.boolean(), transparent: z.boolean() }).strict();
121
+ export const frameIterationSchema = z
122
+ .object({
123
+ id: idSchema,
124
+ batchId: idSchema,
125
+ iterationIndex: z.number().int().min(0).max(3),
126
+ status: frameIterationStatusSchema,
127
+ phase: frameIterationPhaseSchema,
128
+ attemptCount: z.number().int().nonnegative(),
129
+ failureCode: frameFailureCodeSchema.nullable(),
130
+ settings: frameSettingsSchema,
131
+ width: z.number().int().positive().nullable(),
132
+ height: z.number().int().positive().nullable(),
133
+ startedAt: isoDateSchema.nullable().optional(),
134
+ completedAt: isoDateSchema.nullable().optional(),
135
+ createdAt: isoDateSchema,
136
+ updatedAt: isoDateSchema,
137
+ downloads: frameDownloadsSchema
138
+ })
139
+ .strict()
140
+ .superRefine((value, context) => {
141
+ const downloadsAvailable = value.downloads.green || value.downloads.transparent;
142
+ const hasDimensions = value.width !== null || value.height !== null;
143
+ if (value.status === 'failed') {
144
+ if (value.failureCode === null) {
145
+ context.addIssue({ code: 'custom', path: ['failureCode'], message: 'Failed iterations require a failure code' });
146
+ }
147
+ if (hasDimensions) {
148
+ context.addIssue({ code: 'custom', path: ['width'], message: 'Failed iterations do not expose output dimensions' });
149
+ }
150
+ if (downloadsAvailable) {
151
+ context.addIssue({ code: 'custom', path: ['downloads'], message: 'Failed iterations are not downloadable' });
152
+ }
153
+ return;
154
+ }
155
+ if (value.status === 'succeeded') {
156
+ if (value.failureCode !== null) {
157
+ context.addIssue({ code: 'custom', path: ['failureCode'], message: 'Succeeded iterations do not have a failure code' });
158
+ }
159
+ if (value.width === null || value.height === null) {
160
+ context.addIssue({ code: 'custom', path: ['width'], message: 'Succeeded iterations require output dimensions' });
161
+ }
162
+ if (!value.downloads.green || !value.downloads.transparent) {
163
+ context.addIssue({ code: 'custom', path: ['downloads'], message: 'Succeeded iterations require both downloads' });
164
+ }
165
+ return;
166
+ }
167
+ if (value.status === 'deleting' || value.status === 'deleted') {
168
+ if (value.failureCode !== null) {
169
+ context.addIssue({ code: 'custom', path: ['failureCode'], message: 'Deleted iterations do not have a failure code' });
170
+ }
171
+ if (value.width === null || value.height === null) {
172
+ context.addIssue({ code: 'custom', path: ['width'], message: 'Deleted iterations retain decoded dimensions' });
173
+ }
174
+ if (downloadsAvailable) {
175
+ context.addIssue({ code: 'custom', path: ['downloads'], message: 'Deleted iterations are not downloadable' });
176
+ }
177
+ return;
178
+ }
179
+ if (value.failureCode !== null) {
180
+ context.addIssue({ code: 'custom', path: ['failureCode'], message: 'Non-terminal iterations do not have a failure code' });
181
+ }
182
+ if (hasDimensions) {
183
+ context.addIssue({ code: 'custom', path: ['width'], message: 'Non-terminal iterations do not expose output dimensions' });
184
+ }
185
+ if (downloadsAvailable) {
186
+ context.addIssue({ code: 'custom', path: ['downloads'], message: 'Non-terminal iterations are not downloadable' });
187
+ }
188
+ });
189
+ export const frameBatchSchema = z
190
+ .object({
191
+ id: idSchema,
192
+ requestedCount: z.number().int().min(1).max(4),
193
+ createdAt: isoDateSchema,
194
+ iterations: z.array(frameIterationSchema).min(1).max(4)
195
+ })
196
+ .strict();
197
+ export const savedFrameSchema = frameIterationSchema
198
+ .safeExtend({
199
+ status: z.literal('succeeded'),
200
+ failureCode: z.null(),
201
+ width: z.number().int().positive(),
202
+ height: z.number().int().positive(),
203
+ downloads: z.object({ green: z.literal(true), transparent: z.literal(true) }).strict()
204
+ })
205
+ .strict();
206
+ export const listFramesResponseSchema = z
207
+ .object({
208
+ items: z.array(savedFrameSchema),
209
+ nextCursor: z.string().min(1).nullable()
210
+ })
211
+ .strict();
212
+ export const listFramesQuerySchema = z
213
+ .object({
214
+ cursor: z.string().min(1).optional(),
215
+ limit: z.coerce.number().int().min(1).max(50).optional()
216
+ })
217
+ .strict();
218
+ export const deleteFrameResponseSchema = z
219
+ .object({
220
+ id: idSchema,
221
+ status: z.enum(['deleting', 'deleted'])
222
+ })
223
+ .strict();
package/dist/index.d.ts CHANGED
@@ -5,6 +5,7 @@ export * from './auth.js';
5
5
  export * from './client.js';
6
6
  export * from './common.js';
7
7
  export * from './credits.js';
8
+ export * from './frame-iterator.js';
8
9
  export * from './generation.js';
9
10
  export * from './guidelines.js';
10
11
  export * from './loop-tools.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,eAAe,CAAA;AAC7B,cAAc,iBAAiB,CAAA"}
package/dist/index.js CHANGED
@@ -5,6 +5,7 @@ export * from './auth.js';
5
5
  export * from './client.js';
6
6
  export * from './common.js';
7
7
  export * from './credits.js';
8
+ export * from './frame-iterator.js';
8
9
  export * from './generation.js';
9
10
  export * from './guidelines.js';
10
11
  export * from './loop-tools.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anuragpal02/zcl-contracts",
3
- "version": "0.32.0",
3
+ "version": "0.33.0",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",