ugcinc 2.99.5 → 2.99.7
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 +27 -0
- package/dist/types.d.ts +60 -1
- package/package.json +1 -1
package/dist/automations.js
CHANGED
|
@@ -167,6 +167,22 @@ function getAllNodes() {
|
|
|
167
167
|
},
|
|
168
168
|
],
|
|
169
169
|
},
|
|
170
|
+
{
|
|
171
|
+
type: "video-import",
|
|
172
|
+
label: "Import Video",
|
|
173
|
+
description: "Import videos from YouTube, TikTok, Instagram & more",
|
|
174
|
+
category: "Sources",
|
|
175
|
+
nodeCategory: "source",
|
|
176
|
+
inputs: [],
|
|
177
|
+
outputs: [
|
|
178
|
+
{
|
|
179
|
+
id: "video",
|
|
180
|
+
title: "video",
|
|
181
|
+
type: "video",
|
|
182
|
+
required: true,
|
|
183
|
+
},
|
|
184
|
+
],
|
|
185
|
+
},
|
|
170
186
|
// Hidden legacy source nodes (replaced by media node)
|
|
171
187
|
{
|
|
172
188
|
type: "image",
|
|
@@ -315,6 +331,17 @@ function getAllNodes() {
|
|
|
315
331
|
},
|
|
316
332
|
],
|
|
317
333
|
},
|
|
334
|
+
{
|
|
335
|
+
type: "custom-model",
|
|
336
|
+
label: "Custom Model",
|
|
337
|
+
description: "Call any fal.ai model",
|
|
338
|
+
category: "AI Generation",
|
|
339
|
+
nodeCategory: "generator",
|
|
340
|
+
// Dynamic inputs based on selected model's schema
|
|
341
|
+
inputs: [],
|
|
342
|
+
// Dynamic output based on model's output type
|
|
343
|
+
outputs: [],
|
|
344
|
+
},
|
|
318
345
|
{
|
|
319
346
|
type: "llm",
|
|
320
347
|
label: "Text Generation",
|
package/dist/types.d.ts
CHANGED
|
@@ -825,7 +825,7 @@ export interface NodeControlConfig {
|
|
|
825
825
|
*/
|
|
826
826
|
isInitializer?: boolean;
|
|
827
827
|
}
|
|
828
|
-
export type NodeTypeEnum = 'image' | 'video' | 'audio' | 'social-audio' | 'text' | 'media' | 'image-editor' | 'video-editor' | 'image-generation' | 'video-generation' | 'llm' | 'output' | 'manual-trigger' | 'recurrence' | 'workflow' | 'account' | 'post-video' | 'post-slideshow' | 'save-to-media' | 'deduplicate';
|
|
828
|
+
export type NodeTypeEnum = 'image' | 'video' | 'audio' | 'social-audio' | 'text' | 'media' | 'video-import' | 'image-editor' | 'video-editor' | 'image-generation' | 'video-generation' | 'custom-model' | 'llm' | 'output' | 'manual-trigger' | 'recurrence' | 'workflow' | 'account' | 'post-video' | 'post-slideshow' | 'save-to-media' | 'deduplicate';
|
|
829
829
|
export interface OutputSchemaProperty {
|
|
830
830
|
type: 'string' | 'number' | 'boolean' | 'array' | 'object';
|
|
831
831
|
items?: 'string' | 'number' | 'boolean';
|
|
@@ -927,7 +927,9 @@ export interface WorkflowNodeDefinition {
|
|
|
927
927
|
postSlideshowConfig?: PostSlideshowNodeConfig;
|
|
928
928
|
saveToMediaConfig?: SaveToMediaNodeConfig;
|
|
929
929
|
deduplicateConfig?: DeduplicateNodeConfig;
|
|
930
|
+
videoImportConfig?: VideoImportNodeConfig;
|
|
930
931
|
videoGeneration?: VideoGenerationNodeConfig;
|
|
932
|
+
customModelConfig?: CustomModelNodeConfig;
|
|
931
933
|
};
|
|
932
934
|
}
|
|
933
935
|
export interface OutputInput {
|
|
@@ -1092,6 +1094,29 @@ export interface DeduplicateNodeConfig {
|
|
|
1092
1094
|
/** Deduplication settings - preset level or custom config */
|
|
1093
1095
|
deduplication: DeduplicationInput;
|
|
1094
1096
|
}
|
|
1097
|
+
/**
|
|
1098
|
+
* Supported platforms for video import
|
|
1099
|
+
*/
|
|
1100
|
+
export type VideoImportPlatform = 'youtube' | 'tiktok' | 'instagram' | 'twitter' | 'reddit';
|
|
1101
|
+
/**
|
|
1102
|
+
* Video quality options for video import
|
|
1103
|
+
*/
|
|
1104
|
+
export type VideoImportQuality = '360' | '480' | '720' | '1080' | '1440' | '2160';
|
|
1105
|
+
/**
|
|
1106
|
+
* Video Import node configuration - imports videos from social media platforms
|
|
1107
|
+
*/
|
|
1108
|
+
export interface VideoImportNodeConfig {
|
|
1109
|
+
/** Platform to import from */
|
|
1110
|
+
platform: VideoImportPlatform;
|
|
1111
|
+
/** URL options (like textOptions in text node) */
|
|
1112
|
+
urlOptions: string[];
|
|
1113
|
+
/** Video quality preference */
|
|
1114
|
+
videoQuality?: VideoImportQuality;
|
|
1115
|
+
/** Selection mode for multiple URLs */
|
|
1116
|
+
selectionConfig?: {
|
|
1117
|
+
mode: 'random' | 'sequential';
|
|
1118
|
+
};
|
|
1119
|
+
}
|
|
1095
1120
|
/**
|
|
1096
1121
|
* Video Generation Model IDs
|
|
1097
1122
|
* Text-to-video models take just a prompt, image-to-video models require an image input
|
|
@@ -1112,6 +1137,40 @@ export interface VideoGenerationNodeConfig {
|
|
|
1112
1137
|
/** Video duration in seconds (model-dependent) */
|
|
1113
1138
|
duration?: number;
|
|
1114
1139
|
}
|
|
1140
|
+
/**
|
|
1141
|
+
* Custom Model input parameter type
|
|
1142
|
+
*/
|
|
1143
|
+
export type CustomModelParamType = 'string' | 'number' | 'boolean' | 'image' | 'video' | 'audio';
|
|
1144
|
+
/**
|
|
1145
|
+
* Custom Model input parameter definition
|
|
1146
|
+
*/
|
|
1147
|
+
export interface CustomModelInputParam {
|
|
1148
|
+
/** Parameter name (used as port ID) */
|
|
1149
|
+
name: string;
|
|
1150
|
+
/** Parameter type */
|
|
1151
|
+
type: CustomModelParamType;
|
|
1152
|
+
/** Whether this parameter is required */
|
|
1153
|
+
required: boolean;
|
|
1154
|
+
/** Description from OpenAPI schema */
|
|
1155
|
+
description?: string;
|
|
1156
|
+
/** Default value */
|
|
1157
|
+
default?: unknown;
|
|
1158
|
+
}
|
|
1159
|
+
/**
|
|
1160
|
+
* Custom Model node configuration - call any fal.ai model
|
|
1161
|
+
*/
|
|
1162
|
+
export interface CustomModelNodeConfig {
|
|
1163
|
+
/** fal.ai model ID (e.g., "fal-ai/flux/dev") */
|
|
1164
|
+
modelId: string;
|
|
1165
|
+
/** Display name for the model */
|
|
1166
|
+
modelName: string;
|
|
1167
|
+
/** Expected output type (determines how to extract result) */
|
|
1168
|
+
outputType: 'image' | 'video' | 'audio';
|
|
1169
|
+
/** Dynamic input parameters parsed from OpenAPI schema */
|
|
1170
|
+
inputParams: CustomModelInputParam[];
|
|
1171
|
+
/** Custom fal.ai API key (optional - uses platform key if not provided) */
|
|
1172
|
+
apiKey?: string;
|
|
1173
|
+
}
|
|
1115
1174
|
export interface CanvasState {
|
|
1116
1175
|
zoom: number;
|
|
1117
1176
|
panX: number;
|