@blitzreels/sdk 0.1.5 → 0.2.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.
Files changed (119) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +52 -2
  3. package/dist/client.d.ts +197 -0
  4. package/dist/client.d.ts.map +1 -0
  5. package/dist/client.js +78 -0
  6. package/dist/client.js.map +1 -0
  7. package/dist/index.d.ts +17 -1482
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +3 -1060
  10. package/dist/index.js.map +1 -1
  11. package/dist/resources/ai-edit.d.ts +2 -2
  12. package/dist/resources/ai-edit.d.ts.map +1 -1
  13. package/dist/resources/auth-projects.d.ts +26 -0
  14. package/dist/resources/auth-projects.d.ts.map +1 -0
  15. package/dist/resources/auth-projects.js +129 -0
  16. package/dist/resources/auth-projects.js.map +1 -0
  17. package/dist/resources/captions.d.ts +5 -5
  18. package/dist/resources/captions.d.ts.map +1 -1
  19. package/dist/resources/captions.js +15 -0
  20. package/dist/resources/captions.js.map +1 -1
  21. package/dist/resources/content-audio.d.ts +20 -0
  22. package/dist/resources/content-audio.d.ts.map +1 -0
  23. package/dist/resources/content-audio.js +98 -0
  24. package/dist/resources/content-audio.js.map +1 -0
  25. package/dist/resources/effects-workflows.d.ts +29 -0
  26. package/dist/resources/effects-workflows.d.ts.map +1 -0
  27. package/dist/resources/effects-workflows.js +154 -0
  28. package/dist/resources/effects-workflows.js.map +1 -0
  29. package/dist/resources/exports-jobs.d.ts +19 -0
  30. package/dist/resources/exports-jobs.d.ts.map +1 -0
  31. package/dist/resources/exports-jobs.js +88 -0
  32. package/dist/resources/exports-jobs.js.map +1 -0
  33. package/dist/resources/faceless.d.ts +18 -0
  34. package/dist/resources/faceless.d.ts.map +1 -0
  35. package/dist/resources/faceless.js +89 -0
  36. package/dist/resources/faceless.js.map +1 -0
  37. package/dist/resources/formats.d.ts +9 -0
  38. package/dist/resources/formats.d.ts.map +1 -0
  39. package/dist/resources/formats.js +21 -0
  40. package/dist/resources/formats.js.map +1 -0
  41. package/dist/resources/generation.d.ts +29 -0
  42. package/dist/resources/generation.d.ts.map +1 -0
  43. package/dist/resources/generation.js +161 -0
  44. package/dist/resources/generation.js.map +1 -0
  45. package/dist/resources/libraries.d.ts +19 -0
  46. package/dist/resources/libraries.d.ts.map +1 -0
  47. package/dist/resources/libraries.js +89 -0
  48. package/dist/resources/libraries.js.map +1 -0
  49. package/dist/resources/media-clips.d.ts +61 -0
  50. package/dist/resources/media-clips.d.ts.map +1 -0
  51. package/dist/resources/media-clips.js +395 -0
  52. package/dist/resources/media-clips.js.map +1 -0
  53. package/dist/resources/timeline.d.ts +10 -2
  54. package/dist/resources/timeline.d.ts.map +1 -1
  55. package/dist/resources/timeline.js +93 -54
  56. package/dist/resources/timeline.js.map +1 -1
  57. package/dist/resources/workspace-onboarding.d.ts +25 -0
  58. package/dist/resources/workspace-onboarding.d.ts.map +1 -0
  59. package/dist/resources/workspace-onboarding.js +99 -0
  60. package/dist/resources/workspace-onboarding.js.map +1 -0
  61. package/dist/transport.d.ts +22 -0
  62. package/dist/transport.d.ts.map +1 -0
  63. package/dist/transport.js +189 -0
  64. package/dist/transport.js.map +1 -0
  65. package/dist/types/ai-edit.d.ts +180 -0
  66. package/dist/types/ai-edit.d.ts.map +1 -0
  67. package/dist/types/ai-edit.js +2 -0
  68. package/dist/types/ai-edit.js.map +1 -0
  69. package/dist/types/captions.d.ts +202 -0
  70. package/dist/types/captions.d.ts.map +1 -0
  71. package/dist/types/captions.js +2 -0
  72. package/dist/types/captions.js.map +1 -0
  73. package/dist/types/clips.d.ts +145 -0
  74. package/dist/types/clips.d.ts.map +1 -0
  75. package/dist/types/clips.js +2 -0
  76. package/dist/types/clips.js.map +1 -0
  77. package/dist/types/common.d.ts +273 -0
  78. package/dist/types/common.d.ts.map +1 -0
  79. package/dist/{resources → types}/common.js.map +1 -1
  80. package/dist/types/exports.d.ts +62 -0
  81. package/dist/types/exports.d.ts.map +1 -0
  82. package/dist/types/exports.js +2 -0
  83. package/dist/types/exports.js.map +1 -0
  84. package/dist/types/faceless.d.ts +201 -0
  85. package/dist/types/faceless.d.ts.map +1 -0
  86. package/dist/types/faceless.js +2 -0
  87. package/dist/types/faceless.js.map +1 -0
  88. package/dist/types/formats.d.ts +40 -0
  89. package/dist/types/formats.d.ts.map +1 -0
  90. package/dist/types/formats.js +2 -0
  91. package/dist/types/formats.js.map +1 -0
  92. package/dist/types/generation.d.ts +84 -0
  93. package/dist/types/generation.d.ts.map +1 -0
  94. package/dist/types/generation.js +2 -0
  95. package/dist/types/generation.js.map +1 -0
  96. package/dist/types/libraries.d.ts +184 -0
  97. package/dist/types/libraries.d.ts.map +1 -0
  98. package/dist/types/libraries.js +2 -0
  99. package/dist/types/libraries.js.map +1 -0
  100. package/dist/types/media.d.ts +328 -0
  101. package/dist/types/media.d.ts.map +1 -0
  102. package/dist/types/media.js +2 -0
  103. package/dist/types/media.js.map +1 -0
  104. package/dist/types/projects.d.ts +187 -0
  105. package/dist/types/projects.d.ts.map +1 -0
  106. package/dist/types/projects.js +2 -0
  107. package/dist/types/projects.js.map +1 -0
  108. package/dist/types/timeline.d.ts +90 -0
  109. package/dist/types/timeline.d.ts.map +1 -0
  110. package/dist/types/timeline.js +2 -0
  111. package/dist/types/timeline.js.map +1 -0
  112. package/dist/types/workspace.d.ts +129 -0
  113. package/dist/types/workspace.d.ts.map +1 -0
  114. package/dist/types/workspace.js +2 -0
  115. package/dist/types/workspace.js.map +1 -0
  116. package/package.json +9 -3
  117. package/dist/resources/common.d.ts +0 -3
  118. package/dist/resources/common.d.ts.map +0 -1
  119. /package/dist/{resources → types}/common.js +0 -0
@@ -0,0 +1,154 @@
1
+ export function createEffectsWorkflowResources({ request, }) {
2
+ const effects = {
3
+ zoom: {
4
+ add: (options) => request({
5
+ method: "POST",
6
+ path: `/projects/${encodeURIComponent(options.projectId)}/effects/zoom`,
7
+ query: undefined,
8
+ body: {
9
+ timeline_item_id: options.timelineItemId,
10
+ content_item_id: options.contentItemId,
11
+ effect_id: options.effectId,
12
+ name: options.name,
13
+ start_time_seconds: options.startTimeSeconds,
14
+ duration_seconds: options.durationSeconds,
15
+ easing: options.easing,
16
+ layer_index: options.layerIndex,
17
+ order_index: options.orderIndex,
18
+ settings: options.settings,
19
+ },
20
+ }),
21
+ update: (options) => request({
22
+ method: "PATCH",
23
+ path: `/projects/${encodeURIComponent(options.projectId)}/effects/zoom/${encodeURIComponent(options.timelineItemId)}`,
24
+ query: undefined,
25
+ body: {
26
+ duration_seconds: options.durationSeconds,
27
+ easing: options.easing,
28
+ settings: options.settings,
29
+ },
30
+ }),
31
+ },
32
+ mask: {
33
+ add: (options) => request({
34
+ method: "POST",
35
+ path: `/projects/${encodeURIComponent(options.projectId)}/effects/mask`,
36
+ query: undefined,
37
+ body: {
38
+ timeline_item_id: options.timelineItemId,
39
+ content_item_id: options.contentItemId,
40
+ effect_id: options.effectId,
41
+ name: options.name,
42
+ start_time_seconds: options.startTimeSeconds,
43
+ duration_seconds: options.durationSeconds,
44
+ easing: options.easing,
45
+ layer_index: options.layerIndex,
46
+ order_index: options.orderIndex,
47
+ settings: options.settings,
48
+ },
49
+ }),
50
+ update: (options) => request({
51
+ method: "PATCH",
52
+ path: `/projects/${encodeURIComponent(options.projectId)}/effects/mask/${encodeURIComponent(options.timelineItemId)}`,
53
+ query: undefined,
54
+ body: {
55
+ duration_seconds: options.durationSeconds,
56
+ easing: options.easing,
57
+ settings: options.settings,
58
+ },
59
+ }),
60
+ },
61
+ colorgrade: {
62
+ add: (options) => request({
63
+ method: "POST",
64
+ path: `/projects/${encodeURIComponent(options.projectId)}/effects/colorgrade`,
65
+ query: undefined,
66
+ body: {
67
+ timeline_item_id: options.timelineItemId,
68
+ content_item_id: options.contentItemId,
69
+ effect_id: options.effectId,
70
+ name: options.name,
71
+ start_time_seconds: options.startTimeSeconds,
72
+ duration_seconds: options.durationSeconds,
73
+ easing: options.easing,
74
+ layer_index: options.layerIndex,
75
+ order_index: options.orderIndex,
76
+ settings: options.settings,
77
+ },
78
+ }),
79
+ update: (options) => request({
80
+ method: "PATCH",
81
+ path: `/projects/${encodeURIComponent(options.projectId)}/effects/colorgrade/${encodeURIComponent(options.timelineItemId)}`,
82
+ query: undefined,
83
+ body: {
84
+ duration_seconds: options.durationSeconds,
85
+ easing: options.easing,
86
+ settings: options.settings,
87
+ },
88
+ }),
89
+ },
90
+ };
91
+ const silence = {
92
+ plan: (options) => request({
93
+ method: "POST",
94
+ path: `/projects/${encodeURIComponent(options.projectId)}/silence/plan`,
95
+ query: undefined,
96
+ body: {
97
+ timeline_item_id: options.timelineItemId,
98
+ all_media_items: options.allMediaItems,
99
+ strategy: options.strategy,
100
+ padding_ms: options.paddingMs,
101
+ silence_threshold_db: options.silenceThresholdDb,
102
+ min_silence_duration_seconds: options.minSilenceDurationSeconds,
103
+ remove_blips_max_duration_seconds: options.removeBlipsMaxDurationSeconds,
104
+ use_caption_validation: options.useCaptionValidation,
105
+ },
106
+ }),
107
+ apply: (options) => request({
108
+ method: "POST",
109
+ path: `/projects/${encodeURIComponent(options.projectId)}/silence/apply`,
110
+ query: undefined,
111
+ body: {
112
+ timeline_item_id: options.timelineItemId,
113
+ all_media_items: options.allMediaItems,
114
+ padding_ms: options.paddingMs,
115
+ silence_threshold_db: options.silenceThresholdDb,
116
+ min_silence_duration_seconds: options.minSilenceDurationSeconds,
117
+ remove_blips_max_duration_seconds: options.removeBlipsMaxDurationSeconds,
118
+ use_caption_validation: options.useCaptionValidation,
119
+ delete_silent_clips: options.deleteSilentClips,
120
+ manual_segment_overrides: options.manualSegmentOverrides,
121
+ segments: options.segments?.map((segment) => ({
122
+ timeline_item_id: segment.timelineItemId,
123
+ start_seconds: segment.startSeconds,
124
+ end_seconds: segment.endSeconds,
125
+ })),
126
+ preview_confirmed: options.previewConfirmed,
127
+ },
128
+ }),
129
+ };
130
+ const mistakes = {
131
+ plan: (options) => request({
132
+ method: "POST",
133
+ path: `/projects/${encodeURIComponent(options.projectId)}/mistakes/plan`,
134
+ query: undefined,
135
+ body: {
136
+ timeline_item_id: options.timelineItemId,
137
+ },
138
+ }),
139
+ apply: (options) => request({
140
+ method: "POST",
141
+ path: `/projects/${encodeURIComponent(options.projectId)}/mistakes/apply`,
142
+ query: undefined,
143
+ body: {
144
+ timeline_item_id: options.timelineItemId,
145
+ plan: options.plan,
146
+ manual_verdicts: options.manualVerdicts,
147
+ delete_mistakes: options.deleteMistakes,
148
+ preview_confirmed: options.previewConfirmed,
149
+ },
150
+ }),
151
+ };
152
+ return { effects, silence, mistakes };
153
+ }
154
+ //# sourceMappingURL=effects-workflows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"effects-workflows.js","sourceRoot":"","sources":["../../src/resources/effects-workflows.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { SdkRequest } from "../transport.js";
2
+ import type { FetchFn } from "../types/common.js";
3
+ import type { ExportStartResult, ExportStatus, JobStatus, ProjectExportList } from "../types/exports.js";
4
+ export declare function createExportsJobsResources({ request, fetchFn, }: {
5
+ request: SdkRequest;
6
+ fetchFn: FetchFn;
7
+ }): {
8
+ exports: {
9
+ start: (options: any) => Promise<ExportStartResult>;
10
+ list: (options: any) => Promise<ProjectExportList>;
11
+ get: (options: any) => Promise<ExportStatus>;
12
+ wait: (options: any) => Promise<ExportStatus>;
13
+ download: (options: any) => Promise<ArrayBuffer>;
14
+ };
15
+ jobs: {
16
+ get: (options: any) => Promise<JobStatus>;
17
+ };
18
+ };
19
+ //# sourceMappingURL=exports-jobs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exports-jobs.d.ts","sourceRoot":"","sources":["../../src/resources/exports-jobs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,iBAAiB,EAElB,MAAM,qBAAqB,CAAC;AAE7B,wBAAgB,0BAA0B,CAAC,EACzC,OAAO,EACP,OAAO,GACR,EAAE;IACD,OAAO,EAAE,UAAU,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;;;;;;;;;;;EAgGA"}
@@ -0,0 +1,88 @@
1
+ import { BlitzReelsError } from "../transport.js";
2
+ export function createExportsJobsResources({ request, fetchFn, }) {
3
+ const exports = {
4
+ start: (options) => request({
5
+ method: "POST",
6
+ path: `/projects/${encodeURIComponent(options.projectId)}/export`,
7
+ query: undefined,
8
+ body: {
9
+ resolution: options.resolution,
10
+ format: options.format,
11
+ cover_frame_seconds: options.coverFrameSeconds,
12
+ },
13
+ idempotencyKey: options.idempotencyKey,
14
+ }),
15
+ list: (options) => request({
16
+ method: "GET",
17
+ path: `/projects/${encodeURIComponent(options.projectId)}/exports`,
18
+ query: {
19
+ limit: options.limit,
20
+ offset: options.offset,
21
+ },
22
+ body: undefined,
23
+ }),
24
+ get: (options) => request({
25
+ method: "GET",
26
+ path: `/exports/${encodeURIComponent(options.exportId)}`,
27
+ query: undefined,
28
+ body: undefined,
29
+ }),
30
+ wait: (options) => waitForExport(options),
31
+ download: (options) => downloadExport(options),
32
+ };
33
+ const jobs = {
34
+ get: (options) => request({
35
+ method: "GET",
36
+ path: `/jobs/${encodeURIComponent(options.jobId)}`,
37
+ query: undefined,
38
+ body: undefined,
39
+ }),
40
+ };
41
+ async function waitForExport(options) {
42
+ const startedAt = Date.now();
43
+ while (Date.now() - startedAt <= options.timeoutMs) {
44
+ const status = await exports.get({ exportId: options.exportId });
45
+ if (status.status === "completed")
46
+ return status;
47
+ if (status.status === "failed" || status.status === "canceled") {
48
+ throw new BlitzReelsError({
49
+ message: `Export ${options.exportId} ended with status ${status.status}`,
50
+ status: 422,
51
+ requestId: null,
52
+ body: status,
53
+ });
54
+ }
55
+ await new Promise((resolve) => setTimeout(resolve, options.intervalMs));
56
+ }
57
+ throw new BlitzReelsError({
58
+ message: `Timed out waiting for export ${options.exportId}`,
59
+ status: 408,
60
+ requestId: null,
61
+ body: { export_id: options.exportId },
62
+ });
63
+ }
64
+ async function downloadExport(options) {
65
+ const status = await exports.get({ exportId: options.exportId });
66
+ const downloadUrl = status.download_url ?? status.short_download_url;
67
+ if (downloadUrl === null) {
68
+ throw new BlitzReelsError({
69
+ message: `Export ${options.exportId} is not ready for download`,
70
+ status: 409,
71
+ requestId: null,
72
+ body: status,
73
+ });
74
+ }
75
+ const response = await fetchFn(downloadUrl);
76
+ if (!response.ok) {
77
+ throw new BlitzReelsError({
78
+ message: `Failed to download export ${options.exportId}`,
79
+ status: response.status,
80
+ requestId: response.headers.get("x-request-id"),
81
+ body: null,
82
+ });
83
+ }
84
+ return response.arrayBuffer();
85
+ }
86
+ return { exports, jobs };
87
+ }
88
+ //# sourceMappingURL=exports-jobs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exports-jobs.js","sourceRoot":"","sources":["../../src/resources/exports-jobs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import type { SdkRequest } from "../transport.js";
2
+ import type { ApproveFacelessRevisionOptions, CreateFacelessPlanOptions, FacelessApprovalReceipt, FacelessAssetRegenerationReceipt, FacelessPlanRevision, FacelessRevisionOptions, RegenerateFacelessAssetOptions, ReviseFacelessPlanOptions } from "../types/faceless.js";
3
+ export type FacelessResource = {
4
+ plans: {
5
+ create: (options: CreateFacelessPlanOptions) => Promise<FacelessPlanRevision>;
6
+ get: (options: FacelessRevisionOptions) => Promise<FacelessPlanRevision>;
7
+ approve: (options: ApproveFacelessRevisionOptions) => Promise<FacelessApprovalReceipt>;
8
+ revise: (options: ReviseFacelessPlanOptions) => Promise<FacelessPlanRevision>;
9
+ };
10
+ assets: {
11
+ approve: (options: ApproveFacelessRevisionOptions) => Promise<FacelessApprovalReceipt>;
12
+ regenerate: (options: RegenerateFacelessAssetOptions) => Promise<FacelessAssetRegenerationReceipt>;
13
+ };
14
+ };
15
+ export declare function createFacelessResource({ request, }: {
16
+ request: SdkRequest;
17
+ }): FacelessResource;
18
+ //# sourceMappingURL=faceless.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"faceless.d.ts","sourceRoot":"","sources":["../../src/resources/faceless.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EACV,8BAA8B,EAC9B,yBAAyB,EACzB,uBAAuB,EACvB,gCAAgC,EAChC,oBAAoB,EACpB,uBAAuB,EACvB,8BAA8B,EAC9B,yBAAyB,EAC1B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE;QACL,MAAM,EAAE,CACN,OAAO,EAAE,yBAAyB,KAC/B,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACnC,GAAG,EAAE,CAAC,OAAO,EAAE,uBAAuB,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACzE,OAAO,EAAE,CACP,OAAO,EAAE,8BAA8B,KACpC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QACtC,MAAM,EAAE,CACN,OAAO,EAAE,yBAAyB,KAC/B,OAAO,CAAC,oBAAoB,CAAC,CAAC;KACpC,CAAC;IACF,MAAM,EAAE;QACN,OAAO,EAAE,CACP,OAAO,EAAE,8BAA8B,KACpC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QACtC,UAAU,EAAE,CACV,OAAO,EAAE,8BAA8B,KACpC,OAAO,CAAC,gCAAgC,CAAC,CAAC;KAChD,CAAC;CACH,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,EACrC,OAAO,GACR,EAAE;IACD,OAAO,EAAE,UAAU,CAAC;CACrB,GAAG,gBAAgB,CA8FnB"}
@@ -0,0 +1,89 @@
1
+ export function createFacelessResource({ request, }) {
2
+ return {
3
+ plans: {
4
+ create: (options) => request({
5
+ method: "POST",
6
+ path: `/projects/${encodeURIComponent(options.projectId)}/faceless/plans`,
7
+ query: undefined,
8
+ body: {
9
+ script: options.script,
10
+ target_duration_seconds: options.targetDurationSeconds,
11
+ visual_style: options.visualStyle,
12
+ planner_model_id: options.plannerModelId,
13
+ image_model_id: options.imageModelId,
14
+ video_model: options.videoModel,
15
+ voice_id: options.voiceId,
16
+ include_captions: options.includeCaptions,
17
+ caption_style_id: options.captionStyleId,
18
+ generate_background_music: options.generateBackgroundMusic,
19
+ generate_sound_effects: options.generateSoundEffects,
20
+ },
21
+ idempotencyKey: options.idempotencyKey,
22
+ }),
23
+ get: (options) => request({
24
+ method: "GET",
25
+ path: `/projects/${encodeURIComponent(options.projectId)}/faceless/plans/${encodeURIComponent(options.revisionId)}`,
26
+ query: undefined,
27
+ body: undefined,
28
+ }),
29
+ approve: (options) => request({
30
+ method: "POST",
31
+ path: `/projects/${encodeURIComponent(options.projectId)}/faceless/plans/${encodeURIComponent(options.revisionId)}/approve`,
32
+ query: undefined,
33
+ body: {},
34
+ idempotencyKey: options.idempotencyKey,
35
+ }),
36
+ revise: (options) => request({
37
+ method: "POST",
38
+ path: `/projects/${encodeURIComponent(options.projectId)}/faceless/plans/${encodeURIComponent(options.revisionId)}/revise`,
39
+ query: undefined,
40
+ body: {
41
+ scene_updates: options.sceneUpdates?.map((update) => ({
42
+ scene_index: update.sceneIndex,
43
+ title: update.title,
44
+ character_ids: update.characterIds,
45
+ image_prompt: update.imagePrompt,
46
+ motion_prompt: update.motionPrompt,
47
+ })),
48
+ character_updates: options.characterUpdates?.map((update) => ({
49
+ character_id: update.characterId,
50
+ name: update.name,
51
+ canonical_description: update.canonicalDescription,
52
+ anchor_prompt: update.anchorPrompt,
53
+ })),
54
+ style_anchor_prompt: options.styleAnchorPrompt,
55
+ image_model_id: options.imageModelId,
56
+ video_model: options.videoModel,
57
+ },
58
+ idempotencyKey: options.idempotencyKey,
59
+ }),
60
+ },
61
+ assets: {
62
+ approve: (options) => request({
63
+ method: "POST",
64
+ path: `/projects/${encodeURIComponent(options.projectId)}/faceless/plans/${encodeURIComponent(options.revisionId)}/approve-assets`,
65
+ query: undefined,
66
+ body: {},
67
+ idempotencyKey: options.idempotencyKey,
68
+ }),
69
+ regenerate: (options) => request({
70
+ method: "POST",
71
+ path: `/projects/${encodeURIComponent(options.projectId)}/faceless/plans/${encodeURIComponent(options.revisionId)}/regenerate-assets`,
72
+ query: undefined,
73
+ body: options.target.assetType === "style_anchor"
74
+ ? { asset_type: options.target.assetType }
75
+ : options.target.assetType === "character_anchor"
76
+ ? {
77
+ asset_type: options.target.assetType,
78
+ character_id: options.target.characterId,
79
+ }
80
+ : {
81
+ asset_type: options.target.assetType,
82
+ scene_index: options.target.sceneIndex,
83
+ },
84
+ idempotencyKey: options.idempotencyKey,
85
+ }),
86
+ },
87
+ };
88
+ }
89
+ //# sourceMappingURL=faceless.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"faceless.js","sourceRoot":"","sources":["../../src/resources/faceless.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { SdkRequest } from "../transport.js";
2
+ import type { VideoModelBenchmarkOptions, VideoModelBenchmarkReceipt } from "../types/formats.js";
3
+ export type FormatsResource = {
4
+ runVideoModelBenchmark: (options: VideoModelBenchmarkOptions) => Promise<VideoModelBenchmarkReceipt>;
5
+ };
6
+ export declare function createFormatsResource({ request, }: {
7
+ request: SdkRequest;
8
+ }): FormatsResource;
9
+ //# sourceMappingURL=formats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formats.d.ts","sourceRoot":"","sources":["../../src/resources/formats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EACV,0BAA0B,EAC1B,0BAA0B,EAC3B,MAAM,qBAAqB,CAAC;AAE7B,MAAM,MAAM,eAAe,GAAG;IAC5B,sBAAsB,EAAE,CACtB,OAAO,EAAE,0BAA0B,KAChC,OAAO,CAAC,0BAA0B,CAAC,CAAC;CAC1C,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,EACpC,OAAO,GACR,EAAE;IACD,OAAO,EAAE,UAAU,CAAC;CACrB,GAAG,eAAe,CAoBlB"}
@@ -0,0 +1,21 @@
1
+ export function createFormatsResource({ request, }) {
2
+ return {
3
+ runVideoModelBenchmark: (options) => request({
4
+ method: "POST",
5
+ path: "/formats/video-model-benchmark/runs",
6
+ query: undefined,
7
+ body: {
8
+ prompt: options.prompt,
9
+ left_model: options.leftModel,
10
+ right_model: options.rightModel,
11
+ duration_seconds: options.durationSeconds,
12
+ left_label: options.leftLabel,
13
+ right_label: options.rightLabel,
14
+ brand_label: options.brandLabel,
15
+ project_name: options.projectName,
16
+ },
17
+ idempotencyKey: options.idempotencyKey,
18
+ }),
19
+ };
20
+ }
21
+ //# sourceMappingURL=formats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formats.js","sourceRoot":"","sources":["../../src/resources/formats.ts"],"names":[],"mappings":"AAYA,MAAM,UAAU,qBAAqB,CAAC,EACpC,OAAO,GAGR;IACC,OAAO;QACL,sBAAsB,EAAE,CAAC,OAAO,EAAE,EAAE,CAClC,OAAO,CAA6B;YAClC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,qCAAqC;YAC3C,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE;gBACJ,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,UAAU,EAAE,OAAO,CAAC,SAAS;gBAC7B,WAAW,EAAE,OAAO,CAAC,UAAU;gBAC/B,gBAAgB,EAAE,OAAO,CAAC,eAAe;gBACzC,UAAU,EAAE,OAAO,CAAC,SAAS;gBAC7B,WAAW,EAAE,OAAO,CAAC,UAAU;gBAC/B,WAAW,EAAE,OAAO,CAAC,UAAU;gBAC/B,YAAY,EAAE,OAAO,CAAC,WAAW;aAClC;YACD,cAAc,EAAE,OAAO,CAAC,cAAc;SACvC,CAAC;KACL,CAAC;AACJ,CAAC"}
@@ -0,0 +1,29 @@
1
+ import type { SdkRequest } from "../transport.js";
2
+ import type { FetchFn } from "../types/common.js";
3
+ import type { GenerateFacelessOptions, GenerateImageOptions, GenerateMusicOptions, GenerateSoundOptions, GenerateVideoOptions, GenerateVoiceoverOptions, GenerationJob, GenerationKind, GenerationReceipt, WaitForGenerationOptions } from "../types/generation.js";
4
+ export type GenerationResource = {
5
+ options: (options: {
6
+ kind: GenerationKind;
7
+ }) => Promise<Record<string, unknown>>;
8
+ images: (options: GenerateImageOptions) => Promise<GenerationReceipt>;
9
+ videos: (options: GenerateVideoOptions) => Promise<GenerationReceipt>;
10
+ voiceovers: (options: GenerateVoiceoverOptions) => Promise<GenerationReceipt>;
11
+ music: (options: GenerateMusicOptions) => Promise<GenerationReceipt>;
12
+ sounds: (options: GenerateSoundOptions) => Promise<GenerationReceipt>;
13
+ faceless: (options: GenerateFacelessOptions) => Promise<GenerationReceipt>;
14
+ get: (options: {
15
+ jobId: string;
16
+ }) => Promise<GenerationJob>;
17
+ cancel: (options: {
18
+ jobId: string;
19
+ }) => Promise<GenerationJob>;
20
+ wait: (options: WaitForGenerationOptions) => Promise<GenerationJob>;
21
+ download: (options: {
22
+ jobId: string;
23
+ }) => Promise<ArrayBuffer>;
24
+ };
25
+ export declare function createGenerationResource({ request, fetchFn, }: {
26
+ request: SdkRequest;
27
+ fetchFn: FetchFn;
28
+ }): GenerationResource;
29
+ //# sourceMappingURL=generation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generation.d.ts","sourceRoot":"","sources":["../../src/resources/generation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EACV,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,wBAAwB,EACzB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,CAAC,OAAO,EAAE;QACjB,IAAI,EAAE,cAAc,CAAC;KACtB,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACvC,MAAM,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACtE,MAAM,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACtE,UAAU,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC9E,KAAK,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACrE,MAAM,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACtE,QAAQ,EAAE,CAAC,OAAO,EAAE,uBAAuB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC3E,GAAG,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;IAC/D,IAAI,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;IACpE,QAAQ,EAAE,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;CAChE,CAAC;AAEF,wBAAgB,wBAAwB,CAAC,EACvC,OAAO,EACP,OAAO,GACR,EAAE;IACD,OAAO,EAAE,UAAU,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB,GAAG,kBAAkB,CAwHrB"}
@@ -0,0 +1,161 @@
1
+ import { BlitzReelsError } from "../transport.js";
2
+ export function createGenerationResource({ request, fetchFn, }) {
3
+ const generation = {
4
+ options: (options) => request({
5
+ method: "GET",
6
+ path: `/generation-options/${encodeURIComponent(options.kind)}`,
7
+ query: undefined,
8
+ body: undefined,
9
+ }),
10
+ images: (options) => request({
11
+ method: "POST",
12
+ path: "/generate-image",
13
+ query: undefined,
14
+ body: {
15
+ prompt: options.prompt,
16
+ model: options.model,
17
+ aspect_ratio: options.aspectRatio,
18
+ reference_asset_ids: options.referenceAssetIds,
19
+ folder_id: options.folderId,
20
+ },
21
+ idempotencyKey: options.idempotencyKey,
22
+ }),
23
+ videos: (options) => request({
24
+ method: "POST",
25
+ path: "/generate-video",
26
+ query: undefined,
27
+ body: {
28
+ prompt: options.prompt,
29
+ model: options.model,
30
+ duration_seconds: options.durationSeconds,
31
+ aspect_ratio: options.aspectRatio,
32
+ source_asset_id: options.sourceAssetId,
33
+ reference_asset_ids: options.referenceAssetIds,
34
+ generate_audio: options.generateAudio,
35
+ negative_prompt: options.negativePrompt,
36
+ seed: options.seed,
37
+ folder_id: options.folderId,
38
+ },
39
+ idempotencyKey: options.idempotencyKey,
40
+ }),
41
+ voiceovers: (options) => request({
42
+ method: "POST",
43
+ path: "/generate-voiceover",
44
+ query: undefined,
45
+ body: {
46
+ text: options.text,
47
+ voice_id: options.voiceId,
48
+ voice_style: options.voiceStyle,
49
+ speed: options.speed,
50
+ },
51
+ idempotencyKey: options.idempotencyKey,
52
+ }),
53
+ music: (options) => request({
54
+ method: "POST",
55
+ path: "/generate-music",
56
+ query: undefined,
57
+ body: {
58
+ prompt: options.prompt,
59
+ mood: options.mood,
60
+ duration_seconds: options.durationSeconds,
61
+ },
62
+ idempotencyKey: options.idempotencyKey,
63
+ }),
64
+ sounds: (options) => request({
65
+ method: "POST",
66
+ path: "/generate-sound",
67
+ query: undefined,
68
+ body: {
69
+ prompt: options.prompt,
70
+ duration_seconds: options.durationSeconds,
71
+ loop: options.loop,
72
+ prompt_influence: options.promptInfluence,
73
+ },
74
+ idempotencyKey: options.idempotencyKey,
75
+ }),
76
+ faceless: (options) => request({
77
+ method: "POST",
78
+ path: "/generate-faceless",
79
+ query: undefined,
80
+ body: {
81
+ script: options.script,
82
+ project_name: options.projectName,
83
+ target_duration_seconds: options.targetDurationSeconds,
84
+ visual_style: options.visualStyle,
85
+ planner_model_id: options.plannerModelId,
86
+ image_model_id: options.imageModelId,
87
+ video_model: options.videoModel,
88
+ generate_voiceover: options.generateVoiceover,
89
+ voice_id: options.voiceId,
90
+ include_captions: options.includeCaptions,
91
+ caption_style_id: options.captionStyleId,
92
+ generate_background_music: options.generateBackgroundMusic,
93
+ generate_sound_effects: options.generateSoundEffects,
94
+ },
95
+ idempotencyKey: options.idempotencyKey,
96
+ }),
97
+ get: (options) => request({
98
+ method: "GET",
99
+ path: `/generation-jobs/${encodeURIComponent(options.jobId)}`,
100
+ query: undefined,
101
+ body: undefined,
102
+ }),
103
+ cancel: (options) => request({
104
+ method: "POST",
105
+ path: `/generation-jobs/${encodeURIComponent(options.jobId)}/cancel`,
106
+ query: undefined,
107
+ body: {},
108
+ }),
109
+ wait: (options) => waitForGeneration({ generation, options }),
110
+ download: (options) => downloadGeneration({ generation, fetchFn, options }),
111
+ };
112
+ return generation;
113
+ }
114
+ async function waitForGeneration({ generation, options, }) {
115
+ const startedAt = Date.now();
116
+ while (Date.now() - startedAt <= options.timeoutMs) {
117
+ const job = await generation.get({ jobId: options.jobId });
118
+ if (job.status === "complete") {
119
+ return job;
120
+ }
121
+ if (job.status === "failed" || job.status === "canceled") {
122
+ throw new BlitzReelsError({
123
+ message: `Generation ${options.jobId} ended with status ${job.status}`,
124
+ status: 422,
125
+ requestId: null,
126
+ body: job,
127
+ });
128
+ }
129
+ await new Promise((resolve) => {
130
+ setTimeout(resolve, options.intervalMs);
131
+ });
132
+ }
133
+ throw new BlitzReelsError({
134
+ message: `Timed out waiting for generation ${options.jobId}`,
135
+ status: 408,
136
+ requestId: null,
137
+ body: { job_id: options.jobId },
138
+ });
139
+ }
140
+ async function downloadGeneration({ generation, fetchFn, options, }) {
141
+ const job = await generation.get({ jobId: options.jobId });
142
+ if (job.download_url === null) {
143
+ throw new BlitzReelsError({
144
+ message: `Generation ${options.jobId} has no downloadable asset`,
145
+ status: 409,
146
+ requestId: null,
147
+ body: job,
148
+ });
149
+ }
150
+ const response = await fetchFn(job.download_url);
151
+ if (!response.ok) {
152
+ throw new BlitzReelsError({
153
+ message: `Failed to download generation ${options.jobId}`,
154
+ status: response.status,
155
+ requestId: response.headers.get("x-request-id"),
156
+ body: null,
157
+ });
158
+ }
159
+ return response.arrayBuffer();
160
+ }
161
+ //# sourceMappingURL=generation.js.map