ugcinc 4.1.55 → 4.1.57

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.
@@ -1,4 +1,4 @@
1
- import type { NodePort, PortValue } from '../types';
1
+ import type { NodePort, PortValue, FlowControlOutput } from '../types';
2
2
  import { type InputType, type OutputMode } from './types';
3
3
  /**
4
4
  * Branch node inputs: required key input + dynamic branch-specific inputs.
@@ -30,6 +30,7 @@ declare const definition: import("./types").NodeDefinition<"generator", {
30
30
  declare const _default: typeof definition & {
31
31
  __TInputs: BranchNodeInputs;
32
32
  __TOutputs: BranchNodeOutputs;
33
+ __TExecutorOutput: FlowControlOutput;
33
34
  };
34
35
  export default _default;
35
36
  export type BranchNodeConfig = typeof definition.defaults;
@@ -7,17 +7,58 @@ export interface CustomModelNodeOutputs {
7
7
  output: ImageValue | VideoValue | AudioValue;
8
8
  }
9
9
  export type CustomModelOutputType = 'image' | 'video' | 'audio';
10
+ export type CustomModelParamType = 'string' | 'number' | 'boolean' | 'image' | 'video' | 'audio';
10
11
  export interface CustomModelInputParam {
11
12
  name: string;
12
- type: string;
13
+ type: CustomModelParamType;
13
14
  required: boolean;
14
15
  description?: string;
15
16
  default?: unknown;
16
17
  }
18
+ export interface OpenAPIProperty {
19
+ type?: string;
20
+ format?: string;
21
+ description?: string;
22
+ default?: unknown;
23
+ enum?: string[];
24
+ items?: {
25
+ type?: string;
26
+ $ref?: string;
27
+ };
28
+ $ref?: string;
29
+ }
30
+ interface OpenAPISchemaDefinition {
31
+ properties?: Record<string, OpenAPIProperty>;
32
+ required?: string[];
33
+ 'x-fal-order-properties'?: string[];
34
+ }
35
+ export interface OpenAPISchema {
36
+ components?: {
37
+ schemas?: Record<string, OpenAPISchemaDefinition>;
38
+ };
39
+ }
40
+ /**
41
+ * Map OpenAPI type to our param type
42
+ */
43
+ export declare function mapOpenAPIType(prop: OpenAPIProperty, name: string): CustomModelParamType;
44
+ /**
45
+ * Parse OpenAPI schema to get input parameters
46
+ */
47
+ export declare function parseOpenAPIInputs(schema: OpenAPISchema): CustomModelInputParam[];
48
+ /**
49
+ * Parse OpenAPI schema to determine the output URL path.
50
+ * Returns a path like "images[0].url", "video.url", "audio.url", etc.
51
+ */
52
+ export declare function parseOpenAPIOutputPath(schema: OpenAPISchema, outputType: CustomModelOutputType): string | null;
53
+ /**
54
+ * Determine output type from fal.ai category string
55
+ */
56
+ export declare function getOutputTypeFromCategory(category?: string): CustomModelOutputType;
17
57
  declare const definition: import("./types").NodeDefinition<"generator", {
18
58
  modelId: string;
19
59
  modelName: string;
20
60
  outputType: CustomModelOutputType;
61
+ outputUrlPath: string | null;
21
62
  inputParams: CustomModelInputParam[];
22
63
  apiKey: string | undefined;
23
64
  outputMode: OutputMode;
@@ -1,7 +1,180 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mapOpenAPIType = mapOpenAPIType;
4
+ exports.parseOpenAPIInputs = parseOpenAPIInputs;
5
+ exports.parseOpenAPIOutputPath = parseOpenAPIOutputPath;
6
+ exports.getOutputTypeFromCategory = getOutputTypeFromCategory;
3
7
  const types_1 = require("./types");
4
8
  // =============================================================================
9
+ // OpenAPI Parsing Functions
10
+ // =============================================================================
11
+ /** Helper types that should be excluded when searching for Input/Output schemas */
12
+ const HELPER_TYPES = ['File', 'QueueStatus', 'HTTPValidationError', 'ValidationError', 'Image', 'Video', 'Audio'];
13
+ /**
14
+ * Find the input schema from OpenAPI components.
15
+ * fal.ai names input schemas like "WanProImageToVideoInput" not just "Input"
16
+ */
17
+ function findInputSchema(schemas) {
18
+ if (!schemas)
19
+ return null;
20
+ // First try exact "Input" name
21
+ if (schemas.Input)
22
+ return schemas.Input;
23
+ // Find schema that ends with "Input" (excluding helper types)
24
+ for (const [name, schema] of Object.entries(schemas)) {
25
+ if (name.endsWith('Input') && !HELPER_TYPES.includes(name)) {
26
+ return schema;
27
+ }
28
+ }
29
+ return null;
30
+ }
31
+ /**
32
+ * Find the output schema from OpenAPI components.
33
+ * fal.ai names output schemas like "WanProImageToVideoOutput" not just "Output"
34
+ */
35
+ function findOutputSchema(schemas) {
36
+ if (!schemas)
37
+ return null;
38
+ // First try exact "Output" name
39
+ if (schemas.Output)
40
+ return schemas.Output;
41
+ // Find schema that ends with "Output" (excluding helper types)
42
+ for (const [name, schema] of Object.entries(schemas)) {
43
+ if (name.endsWith('Output') && !HELPER_TYPES.includes(name)) {
44
+ return schema;
45
+ }
46
+ }
47
+ return null;
48
+ }
49
+ /**
50
+ * Map OpenAPI type to our param type
51
+ */
52
+ function mapOpenAPIType(prop, name) {
53
+ // Check for common image/video/audio input patterns
54
+ const nameLower = name.toLowerCase();
55
+ const descLower = (prop.description ?? '').toLowerCase();
56
+ if (nameLower.includes('image') || descLower.includes('image url')) {
57
+ return 'image';
58
+ }
59
+ if (nameLower.includes('video') || descLower.includes('video url')) {
60
+ return 'video';
61
+ }
62
+ if (nameLower.includes('audio') || descLower.includes('audio url')) {
63
+ return 'audio';
64
+ }
65
+ // Check format
66
+ if (prop.format === 'uri' || prop.format === 'binary') {
67
+ // Generic file input - assume image
68
+ return 'image';
69
+ }
70
+ // Map basic types
71
+ if (prop.type === 'integer' || prop.type === 'number') {
72
+ return 'number';
73
+ }
74
+ if (prop.type === 'boolean') {
75
+ return 'boolean';
76
+ }
77
+ return 'string';
78
+ }
79
+ /**
80
+ * Parse OpenAPI schema to get input parameters
81
+ */
82
+ function parseOpenAPIInputs(schema) {
83
+ const schemas = schema.components?.schemas;
84
+ const inputSchema = findInputSchema(schemas);
85
+ if (!inputSchema?.properties) {
86
+ return [];
87
+ }
88
+ const params = [];
89
+ for (const [name, prop] of Object.entries(inputSchema.properties)) {
90
+ // Skip complex nested objects and arrays (for now)
91
+ if (prop.type === 'object' || (prop.type === 'array' && !prop.items)) {
92
+ continue;
93
+ }
94
+ params.push({
95
+ name,
96
+ type: mapOpenAPIType(prop, name),
97
+ required: inputSchema.required?.includes(name) ?? false,
98
+ description: prop.description,
99
+ default: prop.default,
100
+ });
101
+ }
102
+ // Sort: required first, then prompt/text inputs, then others
103
+ return params.sort((a, b) => {
104
+ if (a.required !== b.required)
105
+ return a.required ? -1 : 1;
106
+ if (a.name === 'prompt')
107
+ return -1;
108
+ if (b.name === 'prompt')
109
+ return 1;
110
+ return a.name.localeCompare(b.name);
111
+ });
112
+ }
113
+ /**
114
+ * Parse OpenAPI schema to determine the output URL path.
115
+ * Returns a path like "images[0].url", "video.url", "audio.url", etc.
116
+ */
117
+ function parseOpenAPIOutputPath(schema, outputType) {
118
+ const schemas = schema.components?.schemas;
119
+ const outputSchema = findOutputSchema(schemas);
120
+ if (!outputSchema?.properties) {
121
+ return null;
122
+ }
123
+ const props = outputSchema.properties;
124
+ // Check for common output patterns based on output type
125
+ if (outputType === 'image') {
126
+ // Array patterns: images, outputs
127
+ if (props.images?.type === 'array')
128
+ return 'images[0].url';
129
+ if (props.outputs?.type === 'array')
130
+ return 'outputs[0].url';
131
+ // Object patterns: image, output
132
+ if (props.image)
133
+ return 'image.url';
134
+ if (props.output?.type === 'string')
135
+ return 'output';
136
+ }
137
+ if (outputType === 'video') {
138
+ // Object patterns: video
139
+ if (props.video)
140
+ return 'video.url';
141
+ // Array patterns: videos
142
+ if (props.videos?.type === 'array')
143
+ return 'videos[0].url';
144
+ if (props.output?.type === 'string')
145
+ return 'output';
146
+ }
147
+ if (outputType === 'audio') {
148
+ // Object patterns: audio, audio_file
149
+ if (props.audio)
150
+ return 'audio.url';
151
+ if (props.audio_file)
152
+ return 'audio_file.url';
153
+ // String patterns: audio_url
154
+ if (props.audio_url?.type === 'string')
155
+ return 'audio_url';
156
+ if (props.output?.type === 'string')
157
+ return 'output';
158
+ }
159
+ // Fallback: check for generic url property
160
+ if (props.url?.type === 'string')
161
+ return 'url';
162
+ return null;
163
+ }
164
+ /**
165
+ * Determine output type from fal.ai category string
166
+ */
167
+ function getOutputTypeFromCategory(category) {
168
+ if (!category)
169
+ return 'image';
170
+ const catLower = category.toLowerCase();
171
+ if (catLower.includes('video'))
172
+ return 'video';
173
+ if (catLower.includes('audio') || catLower.includes('speech'))
174
+ return 'audio';
175
+ return 'image';
176
+ }
177
+ // =============================================================================
5
178
  // Node Definition
6
179
  // =============================================================================
7
180
  const definition = (0, types_1.defineNode)({
@@ -16,6 +189,7 @@ const definition = (0, types_1.defineNode)({
16
189
  modelId: '',
17
190
  modelName: '',
18
191
  outputType: 'image',
192
+ outputUrlPath: null,
19
193
  inputParams: [],
20
194
  apiKey: undefined,
21
195
  outputMode: 'per-input',
@@ -1,4 +1,4 @@
1
- import type { NodePort, PortValue } from '../types';
1
+ import type { NodePort, PortValue, FlowControlOutput } from '../types';
2
2
  import { type OutputMode } from './types';
3
3
  /**
4
4
  * If node inputs: dynamic boolean condition inputs + passthrough inputs.
@@ -25,6 +25,7 @@ declare const definition: import("./types").NodeDefinition<"generator", {
25
25
  declare const _default: typeof definition & {
26
26
  __TInputs: IfNodeInputs;
27
27
  __TOutputs: IfNodeOutputs;
28
+ __TExecutorOutput: FlowControlOutput;
28
29
  };
29
30
  export default _default;
30
31
  export { IfLogicOperators };
@@ -65,6 +65,7 @@ export declare const nodeDefinitions: {
65
65
  }, import("./branch").BranchNodeInputs, import("./branch").BranchNodeOutputs, false> & {
66
66
  __TInputs: import("./branch").BranchNodeInputs;
67
67
  __TOutputs: import("./branch").BranchNodeOutputs;
68
+ __TExecutorOutput: import("../types").FlowControlOutput;
68
69
  };
69
70
  readonly collect: NodeDefinition<"generator", {
70
71
  expectedCount: number | undefined;
@@ -120,6 +121,7 @@ export declare const nodeDefinitions: {
120
121
  modelId: string;
121
122
  modelName: string;
122
123
  outputType: import("./custom-model").CustomModelOutputType;
124
+ outputUrlPath: string | null;
123
125
  inputParams: import("./custom-model").CustomModelInputParam[];
124
126
  apiKey: string | undefined;
125
127
  outputMode: import("./types").OutputMode;
@@ -186,6 +188,7 @@ export declare const nodeDefinitions: {
186
188
  }, import("./if").IfNodeInputs, import("./if").IfNodeOutputs, false> & {
187
189
  __TInputs: import("./if").IfNodeInputs;
188
190
  __TOutputs: import("./if").IfNodeOutputs;
191
+ __TExecutorOutput: import("../types").FlowControlOutput;
189
192
  };
190
193
  readonly 'image-composer': NodeDefinition<"generator", {
191
194
  imageEditor: {
@@ -270,6 +273,7 @@ export declare const nodeDefinitions: {
270
273
  }, import("./random-route").RandomRouteNodeInputs, import("./random-route").RandomRouteNodeOutputs, false> & {
271
274
  __TInputs: import("./random-route").RandomRouteNodeInputs;
272
275
  __TOutputs: import("./random-route").RandomRouteNodeOutputs;
276
+ __TExecutorOutput: import("../types").FlowControlOutput;
273
277
  };
274
278
  readonly recurrence: NodeDefinition<"trigger", {
275
279
  frequencyType: "per-day" | "periodic";
@@ -382,6 +386,10 @@ type InputsOf<T> = T extends {
382
386
  type OutputsOf<T> = T extends {
383
387
  __TOutputs: infer O;
384
388
  } ? O : never;
389
+ /** Helper to extract executor output types from node definitions (falls back to __TOutputs) */
390
+ type ExecutorOutputsOf<T> = T extends {
391
+ __TExecutorOutput: infer E;
392
+ } ? E : OutputsOf<T>;
385
393
  /**
386
394
  * Input type lookup by node ID.
387
395
  * Auto-derived from phantom types on node definitions.
@@ -400,6 +408,16 @@ export type NodeInputs = {
400
408
  export type NodeOutputs = {
401
409
  [K in UserCreatableNodeType]: OutputsOf<(typeof nodeDefinitions)[K]>;
402
410
  };
411
+ /**
412
+ * Executor output type lookup by node ID.
413
+ * Auto-derived from __TExecutorOutput phantom type, falls back to __TOutputs.
414
+ * Flow control nodes (branch, random-route, if) return FlowControlOutput.
415
+ * @example ExecutorOutputs['branch'] // FlowControlOutput
416
+ * @example ExecutorOutputs['llm'] // Record<string, PortValue | PortValue[]>
417
+ */
418
+ export type ExecutorOutputs = {
419
+ [K in UserCreatableNodeType]: ExecutorOutputsOf<(typeof nodeDefinitions)[K]>;
420
+ };
403
421
  export { internalNodeTypes, type InternalNodeType };
404
422
  export type { NodeDefinition } from './types';
405
423
  /** Union of all node definition types */
@@ -1,4 +1,4 @@
1
- import type { NodePort, PortValue } from '../types';
1
+ import type { NodePort, PortValue, FlowControlOutput } from '../types';
2
2
  import { type InputType, type OutputMode } from './types';
3
3
  /** Random route inputs are dynamic (passthrough inputs where inputType='variable'). */
4
4
  export type RandomRouteNodeInputs = Record<string, PortValue | PortValue[]>;
@@ -21,6 +21,7 @@ declare const definition: import("./types").NodeDefinition<"generator", {
21
21
  declare const _default: typeof definition & {
22
22
  __TInputs: RandomRouteNodeInputs;
23
23
  __TOutputs: RandomRouteNodeOutputs;
24
+ __TExecutorOutput: FlowControlOutput;
24
25
  };
25
26
  export default _default;
26
27
  export type RandomRouteNodeConfig = typeof definition.defaults;
@@ -4,7 +4,7 @@
4
4
  * Core types for the automation system including ports, selection, and output modes.
5
5
  */
6
6
  import type { ObjectSchemaField, SelectionMode, OutputMode, NodeCategory } from './nodes/types';
7
- import type { NodeType, UserCreatableNodeType, WorkflowConfig, NodeInputs, NodeOutputs, InternalNodeType } from './nodes';
7
+ import type { NodeType, UserCreatableNodeType, WorkflowConfig, NodeInputs, NodeOutputs, ExecutorOutputs, InternalNodeType } from './nodes';
8
8
  import type { ForEachNodeConfig, ForEachNodeInputs, ForEachNodeOutputs } from './nodes/for-each';
9
9
  /**
10
10
  * Config type for internal node types (created dynamically at runtime).
@@ -39,6 +39,18 @@ export type InternalNodeOutputs = {
39
39
  * Combined output type lookup for all node types (user-creatable + internal).
40
40
  */
41
41
  export type AllNodeOutputs = NodeOutputs & InternalNodeOutputs;
42
+ /**
43
+ * Executor output type for internal node types.
44
+ * for-each-value uses the same executor outputs as for-each (its parent node).
45
+ */
46
+ export type InternalExecutorOutputs = {
47
+ 'for-each-value': ForEachNodeOutputs;
48
+ };
49
+ /**
50
+ * Combined executor output type lookup for all node types (user-creatable + internal).
51
+ * Used by NodeExecutor to determine the return type of execute().
52
+ */
53
+ export type AllExecutorOutputs = ExecutorOutputs & InternalExecutorOutputs;
42
54
  /**
43
55
  * Media type for automation nodes
44
56
  */
@@ -397,7 +409,7 @@ export interface ExecutorContext<TType extends NodeType = NodeType> {
397
409
  * Executor for synchronous nodes.
398
410
  * Generic on node type - config type is automatically derived.
399
411
  */
400
- export interface NodeExecutor<TType extends NodeType, TOutput = AllNodeOutputs[TType]> {
412
+ export interface NodeExecutor<TType extends NodeType, TOutput = AllExecutorOutputs[TType]> {
401
413
  type: TType;
402
414
  /**
403
415
  * Execute the node and return a single output value.
@@ -421,7 +433,7 @@ export type ExecutorAsyncJobStatus<TOutput = unknown> = {
421
433
  * Executor for asynchronous nodes (video-editor, generate-image, workflow).
422
434
  * Uses submit/poll pattern for durable workflows.
423
435
  */
424
- export interface AsyncNodeExecutor<TType extends NodeType, TOutput = AllNodeOutputs[TType]> extends Omit<NodeExecutor<TType, TOutput>, 'execute'> {
436
+ export interface AsyncNodeExecutor<TType extends NodeType, TOutput = AllExecutorOutputs[TType]> extends Omit<NodeExecutor<TType, TOutput>, 'execute'> {
425
437
  isAsync: true;
426
438
  /** Submit job - returns job ID for polling */
427
439
  submitJob: (ctx: ExecutorContext<TType>) => Promise<{
package/dist/index.d.ts CHANGED
@@ -43,7 +43,8 @@ export type { BranchNodeConfig, BranchDefinition, BranchPassthroughInput, Branch
43
43
  export type { CollectNodeConfig, CollectedValues } from './automations/nodes/collect';
44
44
  export type { ComposeWorkflowNodeConfig } from './automations/nodes/compose-workflow';
45
45
  export type { CreateDmNodeConfig, CreateDmMessage, DmPlatform, } from './automations/nodes/create-dm';
46
- export type { CustomModelNodeConfig, CustomModelOutputType, CustomModelInputParam, } from './automations/nodes/custom-model';
46
+ export type { CustomModelNodeConfig, CustomModelOutputType, CustomModelInputParam, CustomModelParamType, OpenAPISchema, OpenAPIProperty, } from './automations/nodes/custom-model';
47
+ export { mapOpenAPIType, parseOpenAPIInputs, parseOpenAPIOutputPath, getOutputTypeFromCategory, } from './automations/nodes/custom-model';
47
48
  export type { DeduplicateNodeConfig } from './automations/nodes/deduplicate';
48
49
  export type { DestructureNodeConfig, DestructureNodeInputs, DestructureNodeOutputs, DestructureSelection, IndexExpression, } from './automations/nodes/destructure';
49
50
  export { indexExpressionToIndexes, resolvePath } from './automations/nodes/destructure';
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
8
  exports.extractWorkflowConfig = exports.generateNodeName = exports.shuffleNodePreview = exports.getPreviewValue = exports.removePreviewForConnection = exports.updatePreviewMapForConnection = exports.computePreviewMap = exports.computeAllNodePreviews = exports.resolveNodePreview = exports.getWorkflowOutputSchema = exports.hasMissingTerminalError = exports.hasMissingTriggerError = exports.getPortErrorsForNode = exports.getErrorNodeIds = exports.validateWorkflow = exports.checkCrossContextViolation = exports.getForEachContext = exports.getConnectedSource = exports.cleanupStaleConnections = exports.removeNodeConnections = exports.removeConnection = exports.addConnection = exports.deriveConnections = exports.createNode = exports.getOutputSchema = exports.getNodeByType = exports.getAllNodes = exports.getInputPreviewValue = exports.computeAllNodePortsWithPreviews = exports.computeAllNodePorts = exports.computePortsWithPreviews = exports.computePortsForNode = exports.areTypesCompatible = exports.submitIMessageDmRenderJob = exports.submitInstagramDmRenderJob = exports.submitAutoCaptionRenderJob = exports.submitScreenshotAnimationRenderJob = exports.submitDeduplicationJob = exports.getRenderJobStatus = exports.submitVideoRenderJob = exports.submitImageRenderJob = exports.CommentsClient = exports.MediaClient = exports.AutomationsClient = exports.OrganizationClient = exports.StatsClient = exports.PostsClient = exports.TasksClient = exports.AccountsClient = exports.UGCClient = void 0;
9
- exports.prepareVideoComposerInput = exports.LLMProviders = exports.IfLogicOperators = exports.resolvePath = exports.indexExpressionToIndexes = exports.nodeConfigToCaptionStyle = exports.prepareImageComposerInput = exports.processTemplate = exports.extractTemplateVariables = exports.PortIdSchema = exports.normalizeToPortId = exports.portIdToTitle = exports.isValidPortId = exports.portId = exports.selectFromPool = exports.getModelDurations = exports.getModelAspectRatios = exports.ALL_VIDEO_MODELS = exports.isImageToVideoModel = exports.IMAGE_ASPECT_RATIOS = exports.ALL_IMAGE_MODELS = exports.isEditModel = exports.getNodeDefinition = exports.isPortType = exports.formatPortType = exports.isAsyncExecutor = exports.internalNodeTypes = exports.nodeDefinitions = void 0;
9
+ exports.prepareVideoComposerInput = exports.LLMProviders = exports.IfLogicOperators = exports.resolvePath = exports.indexExpressionToIndexes = exports.getOutputTypeFromCategory = exports.parseOpenAPIOutputPath = exports.parseOpenAPIInputs = exports.mapOpenAPIType = exports.nodeConfigToCaptionStyle = exports.prepareImageComposerInput = exports.processTemplate = exports.extractTemplateVariables = exports.PortIdSchema = exports.normalizeToPortId = exports.portIdToTitle = exports.isValidPortId = exports.portId = exports.selectFromPool = exports.getModelDurations = exports.getModelAspectRatios = exports.ALL_VIDEO_MODELS = exports.isImageToVideoModel = exports.IMAGE_ASPECT_RATIOS = exports.ALL_IMAGE_MODELS = exports.isEditModel = exports.getNodeDefinition = exports.isPortType = exports.formatPortType = exports.isAsyncExecutor = exports.internalNodeTypes = exports.nodeDefinitions = void 0;
10
10
  // =============================================================================
11
11
  // Client Exports
12
12
  // =============================================================================
@@ -124,6 +124,11 @@ var image_composer_1 = require("./automations/nodes/image-composer");
124
124
  Object.defineProperty(exports, "prepareImageComposerInput", { enumerable: true, get: function () { return image_composer_1.prepareImageComposerInput; } });
125
125
  var auto_caption_1 = require("./automations/nodes/auto-caption");
126
126
  Object.defineProperty(exports, "nodeConfigToCaptionStyle", { enumerable: true, get: function () { return auto_caption_1.nodeConfigToCaptionStyle; } });
127
+ var custom_model_1 = require("./automations/nodes/custom-model");
128
+ Object.defineProperty(exports, "mapOpenAPIType", { enumerable: true, get: function () { return custom_model_1.mapOpenAPIType; } });
129
+ Object.defineProperty(exports, "parseOpenAPIInputs", { enumerable: true, get: function () { return custom_model_1.parseOpenAPIInputs; } });
130
+ Object.defineProperty(exports, "parseOpenAPIOutputPath", { enumerable: true, get: function () { return custom_model_1.parseOpenAPIOutputPath; } });
131
+ Object.defineProperty(exports, "getOutputTypeFromCategory", { enumerable: true, get: function () { return custom_model_1.getOutputTypeFromCategory; } });
127
132
  var destructure_1 = require("./automations/nodes/destructure");
128
133
  Object.defineProperty(exports, "indexExpressionToIndexes", { enumerable: true, get: function () { return destructure_1.indexExpressionToIndexes; } });
129
134
  Object.defineProperty(exports, "resolvePath", { enumerable: true, get: function () { return destructure_1.resolvePath; } });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ugcinc",
3
- "version": "4.1.55",
3
+ "version": "4.1.57",
4
4
  "description": "TypeScript/JavaScript client for the UGC Inc API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",