ugcinc 3.32.1 → 3.32.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/automations.js +21 -0
- package/dist/index.d.ts +2 -2
- package/dist/render.d.ts +11 -0
- package/dist/render.js +58 -0
- package/dist/types.d.ts +8 -0
- package/package.json +1 -1
package/dist/automations.js
CHANGED
|
@@ -313,6 +313,27 @@ function getAllNodes() {
|
|
|
313
313
|
},
|
|
314
314
|
],
|
|
315
315
|
},
|
|
316
|
+
{
|
|
317
|
+
type: "screenshot-animation",
|
|
318
|
+
label: "Screenshot Animation",
|
|
319
|
+
description: "Create an iPhone screenshot animation from an image",
|
|
320
|
+
category: "Generation",
|
|
321
|
+
nodeCategory: "generator",
|
|
322
|
+
inputs: [
|
|
323
|
+
{
|
|
324
|
+
id: "image",
|
|
325
|
+
type: "image",
|
|
326
|
+
required: true,
|
|
327
|
+
},
|
|
328
|
+
],
|
|
329
|
+
outputs: [
|
|
330
|
+
{
|
|
331
|
+
id: "output",
|
|
332
|
+
type: "video",
|
|
333
|
+
required: true,
|
|
334
|
+
},
|
|
335
|
+
],
|
|
336
|
+
},
|
|
316
337
|
{
|
|
317
338
|
type: "sub-agent",
|
|
318
339
|
label: "Sub-Agent",
|
package/dist/index.d.ts
CHANGED
|
@@ -16,6 +16,6 @@ export { portId, isValidPortId, portIdToTitle, normalizeToPortId, PortIdSchema }
|
|
|
16
16
|
export type { PortId } from './port-id';
|
|
17
17
|
export { MediaClient } from './media';
|
|
18
18
|
export { CommentsClient } from './comments';
|
|
19
|
-
export type { RenderJobResponse, RenderJobStatus, SubmitImageRenderJobParams, SubmitVideoRenderJobParams, RenderVideoEditorConfig, } from './render';
|
|
19
|
+
export type { RenderJobResponse, RenderJobStatus, SubmitImageRenderJobParams, SubmitVideoRenderJobParams, SubmitScreenshotAnimationRenderJobParams, RenderVideoEditorConfig, } from './render';
|
|
20
20
|
export type { ClientConfig, } from './base';
|
|
21
|
-
export type { SuccessResponse, ErrorResponse, ApiResponse, Account, AccountStat, AccountTask, EditProfileInfo, Task, TaskType, Post, PostType, PostStatus, PostStat, ApiKey, EditorConfig, VideoEditorNodeConfig, VideoEditorChannel, VideoEditorSegment, VideoEditorVideoSegment, VideoEditorAudioSegment, VideoEditorImageSegment, VideoEditorTextSegment, TimeMode, SegmentTimelinePosition, ImageEditorNodeConfig, ImageEditorElement, ImageEditorNodeInput, ImageEditorNodeOutput, DimensionPresetKey, EditorChannel, TimeValue, BaseSegmentProps, VisualSegmentProps, EditorSegment, VideoSegment, AudioSegment, ImageSegment, TextSegment, StaticSegment, PositionAnchor, RelativePositionConfig, GetAccountsParams, GetAccountStatsParams, GetAccountStatusParams, UpdateAccountInfoParams, UpdateAccountSocialParams, GetTasksParams, GetPostsParams, CreateSlideshowParams, GetPostStatsParams, GetPostStatusParams, CreateVideoParams, RefreshStatsParams, RefreshStatsResponse, RefreshStatsError, DailyAggregatedStat, GetDailyAggregatedStatsParams, DailyPostStat, GetDailyPostStatsParams, TopAccount, GetTopAccountsParams, TopPost, GetTopPostsParams, MediaType, NodePort, NodeControlConfig, NodeTypeEnum, WorkflowNodeDefinition, WorkflowDefinition, CanvasState, TemplateNode, AutomationTemplate, AutomationRun, NodeRun, ExecutorNode, ExecutionEdge, OutputSchemaProperty, SelectionMode, ExhaustionBehavior, SelectionConfig, SelectionState, OutputMode, NodeOutputValues, OutputInput, OutputNodeConfig, ManualTriggerOutput, ManualTriggerNodeConfig, TriggerIterationMode, IterationExhaustionBehavior, CollectionSelectionMode, TriggerCollectionConfig, DayOfWeek, RecurrenceMediaOutput, RecurrenceMediaConfig, RecurrenceNodeConfig, AccountNodeConfig, MediaNodeEnabledType, RecurrenceMediaEnabledType, MediaNodeConfig, PostSchedulingMode, PostSchedulingConfig, AutoPostMode, AutoPostInputType, AutoPostInput, AutoPostNodeConfig, SaveToMediaInput, SaveToMediaNodeConfig, DeduplicateNodeConfig, ForEachOutputProperty, ForEachInputPort, ForEachNodeConfig, VideoImportPlatform, VideoImportQuality, VideoImportNodeConfig, AutoCaptionPreset, AutoCaptionFontWeight, AutoCaptionPosition, AutoCaptionNodeConfig, VideoGenerationNodeConfig, PortType, LLMOutputField, LLMNodeConfig, UserMedia, SocialAudio, Media, GetMediaParams, CreateSocialAudioParams, UploadMediaParams, UploadMediaResponse, UpdateMediaTagParams, DeleteMediaParams, DeleteMediaResponse, CreateMediaFromUrlParams, ImportTextParams, ImportTextResponse, Comment, CommentStatus, CreateCommentParams, CreateCommentResponse, GetCommentsParams, ValidationErrorType, ValidationError, ExportedNode, ExportedConnection, ExportedTemplate, AutomationExport, ExportedExecutor, ExportedEdge, ExportedRun, AutomationRunExport, } from './types';
|
|
21
|
+
export type { SuccessResponse, ErrorResponse, ApiResponse, Account, AccountStat, AccountTask, EditProfileInfo, Task, TaskType, Post, PostType, PostStatus, PostStat, ApiKey, EditorConfig, VideoEditorNodeConfig, VideoEditorChannel, VideoEditorSegment, VideoEditorVideoSegment, VideoEditorAudioSegment, VideoEditorImageSegment, VideoEditorTextSegment, TimeMode, SegmentTimelinePosition, ImageEditorNodeConfig, ImageEditorElement, ImageEditorNodeInput, ImageEditorNodeOutput, DimensionPresetKey, EditorChannel, TimeValue, BaseSegmentProps, VisualSegmentProps, EditorSegment, VideoSegment, AudioSegment, ImageSegment, TextSegment, StaticSegment, PositionAnchor, RelativePositionConfig, GetAccountsParams, GetAccountStatsParams, GetAccountStatusParams, UpdateAccountInfoParams, UpdateAccountSocialParams, GetTasksParams, GetPostsParams, CreateSlideshowParams, GetPostStatsParams, GetPostStatusParams, CreateVideoParams, RefreshStatsParams, RefreshStatsResponse, RefreshStatsError, DailyAggregatedStat, GetDailyAggregatedStatsParams, DailyPostStat, GetDailyPostStatsParams, TopAccount, GetTopAccountsParams, TopPost, GetTopPostsParams, MediaType, NodePort, NodeControlConfig, NodeTypeEnum, WorkflowNodeDefinition, WorkflowDefinition, CanvasState, TemplateNode, AutomationTemplate, AutomationRun, NodeRun, ExecutorNode, ExecutionEdge, OutputSchemaProperty, SelectionMode, ExhaustionBehavior, SelectionConfig, SelectionState, OutputMode, NodeOutputValues, OutputInput, OutputNodeConfig, ManualTriggerOutput, ManualTriggerNodeConfig, TriggerIterationMode, IterationExhaustionBehavior, CollectionSelectionMode, TriggerCollectionConfig, DayOfWeek, RecurrenceMediaOutput, RecurrenceMediaConfig, RecurrenceNodeConfig, AccountNodeConfig, MediaNodeEnabledType, RecurrenceMediaEnabledType, MediaNodeConfig, PostSchedulingMode, PostSchedulingConfig, AutoPostMode, AutoPostInputType, AutoPostInput, AutoPostNodeConfig, SaveToMediaInput, SaveToMediaNodeConfig, DeduplicateNodeConfig, ForEachOutputProperty, ForEachInputPort, ForEachNodeConfig, VideoImportPlatform, VideoImportQuality, VideoImportNodeConfig, AutoCaptionPreset, AutoCaptionFontWeight, AutoCaptionPosition, AutoCaptionNodeConfig, ScreenshotAnimationNodeConfig, VideoGenerationNodeConfig, PortType, LLMOutputField, LLMNodeConfig, UserMedia, SocialAudio, Media, GetMediaParams, CreateSocialAudioParams, UploadMediaParams, UploadMediaResponse, UpdateMediaTagParams, DeleteMediaParams, DeleteMediaResponse, CreateMediaFromUrlParams, ImportTextParams, ImportTextResponse, Comment, CommentStatus, CreateCommentParams, CreateCommentResponse, GetCommentsParams, ValidationErrorType, ValidationError, ExportedNode, ExportedConnection, ExportedTemplate, AutomationExport, ExportedExecutor, ExportedEdge, ExportedRun, AutomationRunExport, } from './types';
|
package/dist/render.d.ts
CHANGED
|
@@ -53,6 +53,12 @@ export interface SubmitDeduplicationJobParams {
|
|
|
53
53
|
/** Deduplication config - preset level ('level1'-'level5') or custom config */
|
|
54
54
|
deduplication: DeduplicationInput;
|
|
55
55
|
}
|
|
56
|
+
export interface SubmitScreenshotAnimationRenderJobParams {
|
|
57
|
+
/** URL of the image being "screenshotted" */
|
|
58
|
+
imageUrl: string;
|
|
59
|
+
/** Duration to hold at end after animation completes (ms) - default 500 */
|
|
60
|
+
holdDurationMs?: number;
|
|
61
|
+
}
|
|
56
62
|
/**
|
|
57
63
|
* Client for rendering operations
|
|
58
64
|
* Note: This calls Modal endpoints directly, not the UGC Inc API
|
|
@@ -76,4 +82,9 @@ export declare class RenderClient {
|
|
|
76
82
|
* Applies hash-breaking, metadata injection, and trace removal to a video
|
|
77
83
|
*/
|
|
78
84
|
submitDeduplicationJob(params: SubmitDeduplicationJobParams): Promise<ApiResponse<RenderJobResponse>>;
|
|
85
|
+
/**
|
|
86
|
+
* Submit a screenshot animation render job to the Modal renderer
|
|
87
|
+
* Renders an iPhone screenshot animation video from a source image
|
|
88
|
+
*/
|
|
89
|
+
submitScreenshotAnimationRenderJob(params: SubmitScreenshotAnimationRenderJobParams): Promise<ApiResponse<RenderJobResponse>>;
|
|
79
90
|
}
|
package/dist/render.js
CHANGED
|
@@ -247,5 +247,63 @@ class RenderClient {
|
|
|
247
247
|
};
|
|
248
248
|
}
|
|
249
249
|
}
|
|
250
|
+
/**
|
|
251
|
+
* Submit a screenshot animation render job to the Modal renderer
|
|
252
|
+
* Renders an iPhone screenshot animation video from a source image
|
|
253
|
+
*/
|
|
254
|
+
async submitScreenshotAnimationRenderJob(params) {
|
|
255
|
+
try {
|
|
256
|
+
const response = await fetch(RENDER_SUBMIT_URL, {
|
|
257
|
+
method: 'POST',
|
|
258
|
+
headers: {
|
|
259
|
+
'Content-Type': 'application/json',
|
|
260
|
+
},
|
|
261
|
+
body: JSON.stringify({
|
|
262
|
+
config: {
|
|
263
|
+
_compositionType: 'screenshot-animation',
|
|
264
|
+
imageUrl: params.imageUrl,
|
|
265
|
+
holdDurationMs: params.holdDurationMs,
|
|
266
|
+
},
|
|
267
|
+
output_type: 'video',
|
|
268
|
+
video_codec: 'h264',
|
|
269
|
+
})
|
|
270
|
+
});
|
|
271
|
+
const text = await response.text();
|
|
272
|
+
let data;
|
|
273
|
+
try {
|
|
274
|
+
data = JSON.parse(text);
|
|
275
|
+
}
|
|
276
|
+
catch (jsonError) {
|
|
277
|
+
console.error('[Render] JSON parse error:', text.substring(0, 200));
|
|
278
|
+
return {
|
|
279
|
+
ok: false,
|
|
280
|
+
code: response.status || 500,
|
|
281
|
+
message: `Modal endpoint error: ${text.substring(0, 100)}`,
|
|
282
|
+
};
|
|
283
|
+
}
|
|
284
|
+
if (data.status === 'error' || !response.ok) {
|
|
285
|
+
return {
|
|
286
|
+
ok: false,
|
|
287
|
+
code: response.status,
|
|
288
|
+
message: data.error ?? data.message ?? 'Failed to submit screenshot animation job',
|
|
289
|
+
};
|
|
290
|
+
}
|
|
291
|
+
return {
|
|
292
|
+
ok: true,
|
|
293
|
+
code: 200,
|
|
294
|
+
message: "Screenshot animation job submitted",
|
|
295
|
+
data,
|
|
296
|
+
};
|
|
297
|
+
}
|
|
298
|
+
catch (error) {
|
|
299
|
+
const errorMessage = error instanceof Error ? error.message : 'Unknown error';
|
|
300
|
+
console.error('[Render] Submit screenshot animation error:', error);
|
|
301
|
+
return {
|
|
302
|
+
ok: false,
|
|
303
|
+
code: 500,
|
|
304
|
+
message: `Failed to submit screenshot animation job: ${errorMessage}`,
|
|
305
|
+
};
|
|
306
|
+
}
|
|
307
|
+
}
|
|
250
308
|
}
|
|
251
309
|
exports.RenderClient = RenderClient;
|
package/dist/types.d.ts
CHANGED
|
@@ -947,6 +947,7 @@ export interface WorkflowNodeDefinition {
|
|
|
947
947
|
customModelConfig?: CustomModelNodeConfig;
|
|
948
948
|
forEachConfig?: ForEachNodeConfig;
|
|
949
949
|
autoCaptionConfig?: AutoCaptionNodeConfig;
|
|
950
|
+
screenshotAnimationConfig?: ScreenshotAnimationNodeConfig;
|
|
950
951
|
};
|
|
951
952
|
}
|
|
952
953
|
export interface OutputInput {
|
|
@@ -1287,6 +1288,13 @@ export interface AutoCaptionNodeConfig {
|
|
|
1287
1288
|
/** Language code for transcription */
|
|
1288
1289
|
language?: string;
|
|
1289
1290
|
}
|
|
1291
|
+
/**
|
|
1292
|
+
* Screenshot Animation node configuration - creates an iPhone screenshot animation video
|
|
1293
|
+
*/
|
|
1294
|
+
export interface ScreenshotAnimationNodeConfig {
|
|
1295
|
+
/** Duration to hold at end after animation completes (ms) - default 500 */
|
|
1296
|
+
holdDurationMs?: number;
|
|
1297
|
+
}
|
|
1290
1298
|
/**
|
|
1291
1299
|
* Video Generation Model IDs
|
|
1292
1300
|
* Text-to-video models take just a prompt, image-to-video models require an image input
|