ugcinc 2.99.0 → 2.99.2

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 (2) hide show
  1. package/dist/automations.js +94 -91
  2. package/package.json +1 -1
@@ -109,117 +109,119 @@ exports.AutomationsClient = AutomationsClient;
109
109
  function getAllNodes() {
110
110
  return [
111
111
  // === Source nodes ===
112
+ // Media first (consolidated node), then other sources
112
113
  {
113
- type: "image",
114
- label: "Image",
115
- description: "Import image files",
116
- category: "Input",
114
+ type: "media",
115
+ label: "Media",
116
+ description: "Use saved media",
117
+ category: "Sources",
117
118
  nodeCategory: "source",
118
119
  inputs: [],
120
+ outputs: [], // Dynamic based on enabledTypes config
121
+ },
122
+ {
123
+ type: "text",
124
+ label: "Text",
125
+ description: "Use text collections",
126
+ category: "Sources",
127
+ nodeCategory: "source",
128
+ inputs: [], // Dynamic inputs based on template variables
119
129
  outputs: [
120
130
  {
121
- id: "image",
122
- title: "image",
123
- type: "image",
131
+ id: "text",
132
+ title: "text",
133
+ type: "text",
124
134
  required: true,
125
135
  },
126
136
  ],
127
137
  },
128
138
  {
129
- type: "video",
130
- label: "Video",
131
- description: "Import video files",
132
- category: "Input",
139
+ type: "social-audio",
140
+ label: "Social Media Audio",
141
+ description: "Link audios from social media",
142
+ category: "Sources",
133
143
  nodeCategory: "source",
134
144
  inputs: [],
135
145
  outputs: [
136
146
  {
137
- id: "video",
138
- title: "video",
139
- type: "video",
147
+ id: "social_audio",
148
+ title: "social_audio",
149
+ type: "social_audio",
140
150
  required: true,
141
151
  },
142
152
  ],
143
153
  },
144
154
  {
145
- type: "audio",
146
- label: "Audio",
147
- description: "Import audio files",
148
- category: "Input",
155
+ type: "account",
156
+ label: "Account",
157
+ description: "Select accounts to post from",
158
+ category: "Sources",
149
159
  nodeCategory: "source",
150
160
  inputs: [],
151
161
  outputs: [
152
162
  {
153
- id: "audio",
154
- title: "audio",
155
- type: "audio",
163
+ id: "account",
164
+ title: "Account",
165
+ type: "account",
156
166
  required: true,
157
167
  },
158
168
  ],
159
169
  },
170
+ // Hidden legacy source nodes (replaced by media node)
160
171
  {
161
- type: "social-audio",
162
- label: "Social Audio",
163
- description: "Import social audio tracks",
164
- category: "Input",
172
+ type: "image",
173
+ label: "Image",
174
+ description: "Import image files",
175
+ category: "Sources",
165
176
  nodeCategory: "source",
166
177
  inputs: [],
167
178
  outputs: [
168
179
  {
169
- id: "social_audio",
170
- title: "social_audio",
171
- type: "social_audio",
180
+ id: "image",
181
+ title: "image",
182
+ type: "image",
172
183
  required: true,
173
184
  },
174
185
  ],
175
186
  },
176
187
  {
177
- type: "text",
178
- label: "Text",
179
- description: "Create text with templated variables",
180
- category: "Input",
188
+ type: "video",
189
+ label: "Video",
190
+ description: "Import video files",
191
+ category: "Sources",
181
192
  nodeCategory: "source",
182
- inputs: [], // Dynamic inputs based on template variables
193
+ inputs: [],
183
194
  outputs: [
184
195
  {
185
- id: "text",
186
- title: "text",
187
- type: "text",
196
+ id: "video",
197
+ title: "video",
198
+ type: "video",
188
199
  required: true,
189
200
  },
190
201
  ],
191
202
  },
192
203
  {
193
- type: "account",
194
- label: "Account",
195
- description: "Select accounts to post from",
196
- category: "Input",
204
+ type: "audio",
205
+ label: "Audio",
206
+ description: "Import audio files",
207
+ category: "Sources",
197
208
  nodeCategory: "source",
198
209
  inputs: [],
199
210
  outputs: [
200
211
  {
201
- id: "account",
202
- title: "Account",
203
- type: "account",
212
+ id: "audio",
213
+ title: "audio",
214
+ type: "audio",
204
215
  required: true,
205
216
  },
206
217
  ],
207
218
  },
208
- {
209
- type: "media",
210
- label: "Media",
211
- description: "Import images, videos, and audio files",
212
- category: "Input",
213
- nodeCategory: "source",
214
- inputs: [],
215
- outputs: [], // Dynamic based on enabledTypes config
216
- },
217
219
  // === Generator nodes ===
218
220
  {
219
221
  type: "image-editor",
220
222
  label: "Image Template",
221
- description: "Edit and transform images",
222
- category: "Templated Generation",
223
+ description: "Create templated images",
224
+ category: "Generation",
223
225
  nodeCategory: "generator",
224
226
  inputs: [
225
227
  {
@@ -241,8 +243,8 @@ function getAllNodes() {
241
243
  {
242
244
  type: "video-editor",
243
245
  label: "Video Template",
244
- description: "Edit and transform videos",
245
- category: "Templated Generation",
246
+ description: "Create templated videos",
247
+ category: "Generation",
246
248
  nodeCategory: "generator",
247
249
  inputs: [], // Dynamic inputs based on segments in editor config
248
250
  outputs: [
@@ -254,11 +256,22 @@ function getAllNodes() {
254
256
  },
255
257
  ],
256
258
  },
259
+ {
260
+ type: "workflow",
261
+ label: "Sub-Agent",
262
+ description: "Embed other agents",
263
+ category: "Generation",
264
+ nodeCategory: "generator",
265
+ // Inputs and outputs are dynamic based on the embedded workflow
266
+ inputs: [],
267
+ outputs: [],
268
+ },
269
+ // === AI nodes ===
257
270
  {
258
271
  type: "image-generation",
259
272
  label: "Image Generation",
260
- description: "Generate images using AI models",
261
- category: "AI",
273
+ description: "Generate images with AI",
274
+ category: "AI Generation",
262
275
  nodeCategory: "generator",
263
276
  inputs: [
264
277
  {
@@ -280,30 +293,20 @@ function getAllNodes() {
280
293
  },
281
294
  {
282
295
  type: "llm",
283
- label: "LLM",
284
- description: "Process input with a Large Language Model",
285
- category: "AI",
296
+ label: "Text Generation",
297
+ description: "Generate LLM output",
298
+ category: "AI Generation",
286
299
  nodeCategory: "generator",
287
300
  // Dynamic inputs: extracted from systemPrompt {{variables}} + media refs
288
301
  inputs: [],
289
302
  // Dynamic outputs: based on outputFields config
290
303
  outputs: [],
291
304
  },
292
- {
293
- type: "workflow",
294
- label: "Workflow",
295
- description: "Embed another workflow as a sub-workflow",
296
- category: "Flow",
297
- nodeCategory: "generator",
298
- // Inputs and outputs are dynamic based on the embedded workflow
299
- inputs: [],
300
- outputs: [],
301
- },
302
305
  // === Trigger nodes ===
303
306
  {
304
307
  type: "manual-trigger",
305
308
  label: "Manual Trigger",
306
- description: "Define inputs required when manually running this automation",
309
+ description: "Trigger manually",
307
310
  category: "Triggers",
308
311
  nodeCategory: "trigger",
309
312
  inputs: [],
@@ -314,7 +317,7 @@ function getAllNodes() {
314
317
  {
315
318
  type: "recurrence",
316
319
  label: "Recurring",
317
- description: "Schedule recurring automation runs",
320
+ description: "Run continuously",
318
321
  category: "Triggers",
319
322
  nodeCategory: "trigger",
320
323
  inputs: [],
@@ -322,26 +325,10 @@ function getAllNodes() {
322
325
  isInitializer: true,
323
326
  },
324
327
  // === Terminal nodes ===
325
- {
326
- type: "output",
327
- label: "Output",
328
- description: "Final output of the automation",
329
- category: "Output",
330
- nodeCategory: "terminal",
331
- inputs: [
332
- {
333
- id: "result",
334
- title: "Result",
335
- type: ["image", "video", "audio", "text"],
336
- required: true,
337
- },
338
- ],
339
- outputs: [],
340
- },
341
328
  {
342
329
  type: "post-video",
343
330
  label: "Post Video",
344
- description: "Post a video to social media",
331
+ description: "Publish a video post",
345
332
  category: "Output",
346
333
  nodeCategory: "terminal",
347
334
  inputs: [
@@ -381,7 +368,7 @@ function getAllNodes() {
381
368
  {
382
369
  type: "post-slideshow",
383
370
  label: "Post Slideshow",
384
- description: "Post a slideshow to social media",
371
+ description: "Publish a slideshow post",
385
372
  category: "Output",
386
373
  nodeCategory: "terminal",
387
374
  // Dynamic inputs based on postSlideshowConfig.inputs
@@ -423,6 +410,22 @@ function getAllNodes() {
423
410
  inputs: [],
424
411
  outputs: [],
425
412
  },
413
+ {
414
+ type: "output",
415
+ label: "Output",
416
+ description: "Pass through outputs",
417
+ category: "Output",
418
+ nodeCategory: "terminal",
419
+ inputs: [
420
+ {
421
+ id: "result",
422
+ title: "Result",
423
+ type: ["image", "video", "audio", "text"],
424
+ required: true,
425
+ },
426
+ ],
427
+ outputs: [],
428
+ },
426
429
  ];
427
430
  }
428
431
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ugcinc",
3
- "version": "2.99.0",
3
+ "version": "2.99.2",
4
4
  "description": "TypeScript/JavaScript client for the UGC Inc API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",