ugcinc 2.99.5 → 2.99.6

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.
@@ -315,6 +315,17 @@ function getAllNodes() {
315
315
  },
316
316
  ],
317
317
  },
318
+ {
319
+ type: "custom-model",
320
+ label: "Custom Model",
321
+ description: "Call any fal.ai model",
322
+ category: "AI Generation",
323
+ nodeCategory: "generator",
324
+ // Dynamic inputs based on selected model's schema
325
+ inputs: [],
326
+ // Dynamic output based on model's output type
327
+ outputs: [],
328
+ },
318
329
  {
319
330
  type: "llm",
320
331
  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' | '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';
@@ -928,6 +928,7 @@ export interface WorkflowNodeDefinition {
928
928
  saveToMediaConfig?: SaveToMediaNodeConfig;
929
929
  deduplicateConfig?: DeduplicateNodeConfig;
930
930
  videoGeneration?: VideoGenerationNodeConfig;
931
+ customModelConfig?: CustomModelNodeConfig;
931
932
  };
932
933
  }
933
934
  export interface OutputInput {
@@ -1112,6 +1113,40 @@ export interface VideoGenerationNodeConfig {
1112
1113
  /** Video duration in seconds (model-dependent) */
1113
1114
  duration?: number;
1114
1115
  }
1116
+ /**
1117
+ * Custom Model input parameter type
1118
+ */
1119
+ export type CustomModelParamType = 'string' | 'number' | 'boolean' | 'image' | 'video' | 'audio';
1120
+ /**
1121
+ * Custom Model input parameter definition
1122
+ */
1123
+ export interface CustomModelInputParam {
1124
+ /** Parameter name (used as port ID) */
1125
+ name: string;
1126
+ /** Parameter type */
1127
+ type: CustomModelParamType;
1128
+ /** Whether this parameter is required */
1129
+ required: boolean;
1130
+ /** Description from OpenAPI schema */
1131
+ description?: string;
1132
+ /** Default value */
1133
+ default?: unknown;
1134
+ }
1135
+ /**
1136
+ * Custom Model node configuration - call any fal.ai model
1137
+ */
1138
+ export interface CustomModelNodeConfig {
1139
+ /** fal.ai model ID (e.g., "fal-ai/flux/dev") */
1140
+ modelId: string;
1141
+ /** Display name for the model */
1142
+ modelName: string;
1143
+ /** Expected output type (determines how to extract result) */
1144
+ outputType: 'image' | 'video' | 'audio';
1145
+ /** Dynamic input parameters parsed from OpenAPI schema */
1146
+ inputParams: CustomModelInputParam[];
1147
+ /** Custom fal.ai API key (optional - uses platform key if not provided) */
1148
+ apiKey?: string;
1149
+ }
1115
1150
  export interface CanvasState {
1116
1151
  zoom: number;
1117
1152
  panX: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ugcinc",
3
- "version": "2.99.5",
3
+ "version": "2.99.6",
4
4
  "description": "TypeScript/JavaScript client for the UGC Inc API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",