tongflow 0.1.0 → 1.0.0
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/README.md +3 -2
- package/abi/tongflow.abi.json +49 -4
- package/dist/canvas-messages.cjs +71 -63
- package/dist/canvas-messages.js +71 -63
- package/dist/canvas.cjs +860 -260
- package/dist/canvas.css +1 -1
- package/dist/canvas.d.cts +157 -11
- package/dist/canvas.d.ts +157 -11
- package/dist/canvas.js +856 -261
- package/dist/index.cjs +680 -24
- package/dist/index.d.cts +323 -22
- package/dist/index.d.ts +323 -22
- package/dist/index.js +671 -25
- package/package.json +120 -26
package/dist/index.d.cts
CHANGED
|
@@ -1059,6 +1059,26 @@ declare const _slot_parse_document_outputs: {
|
|
|
1059
1059
|
readonly text: {
|
|
1060
1060
|
readonly type: "string";
|
|
1061
1061
|
};
|
|
1062
|
+
readonly images: {
|
|
1063
|
+
readonly type: "array";
|
|
1064
|
+
readonly items: {
|
|
1065
|
+
readonly type: "object";
|
|
1066
|
+
readonly required: readonly ["file_key"];
|
|
1067
|
+
readonly properties: {
|
|
1068
|
+
readonly file_key: {
|
|
1069
|
+
readonly type: "string";
|
|
1070
|
+
readonly minLength: 1;
|
|
1071
|
+
};
|
|
1072
|
+
readonly mime: {
|
|
1073
|
+
readonly type: "string";
|
|
1074
|
+
};
|
|
1075
|
+
readonly filename: {
|
|
1076
|
+
readonly type: "string";
|
|
1077
|
+
};
|
|
1078
|
+
};
|
|
1079
|
+
readonly additionalProperties: false;
|
|
1080
|
+
};
|
|
1081
|
+
};
|
|
1062
1082
|
};
|
|
1063
1083
|
readonly additionalProperties: false;
|
|
1064
1084
|
};
|
|
@@ -1350,6 +1370,72 @@ declare const _slot_gen_music_outputs: {
|
|
|
1350
1370
|
readonly additionalProperties: false;
|
|
1351
1371
|
};
|
|
1352
1372
|
type GenMusicOutput = FromSchema<typeof _slot_gen_music_outputs>;
|
|
1373
|
+
declare const _slot_text_gen_audio_inputs: {
|
|
1374
|
+
readonly type: "object";
|
|
1375
|
+
readonly required: readonly ["text"];
|
|
1376
|
+
readonly properties: {
|
|
1377
|
+
readonly text: {
|
|
1378
|
+
readonly type: "string";
|
|
1379
|
+
readonly minLength: 1;
|
|
1380
|
+
};
|
|
1381
|
+
readonly ref_audios: {
|
|
1382
|
+
readonly type: "array";
|
|
1383
|
+
readonly items: {
|
|
1384
|
+
readonly type: "object";
|
|
1385
|
+
readonly required: readonly ["bytesBase64"];
|
|
1386
|
+
readonly properties: {
|
|
1387
|
+
readonly bytesBase64: {
|
|
1388
|
+
readonly type: "string";
|
|
1389
|
+
readonly minLength: 1;
|
|
1390
|
+
};
|
|
1391
|
+
readonly filename: {
|
|
1392
|
+
readonly type: "string";
|
|
1393
|
+
};
|
|
1394
|
+
readonly mime: {
|
|
1395
|
+
readonly type: "string";
|
|
1396
|
+
};
|
|
1397
|
+
};
|
|
1398
|
+
readonly additionalProperties: false;
|
|
1399
|
+
};
|
|
1400
|
+
};
|
|
1401
|
+
readonly seed: {
|
|
1402
|
+
readonly type: "integer";
|
|
1403
|
+
};
|
|
1404
|
+
};
|
|
1405
|
+
readonly additionalProperties: false;
|
|
1406
|
+
};
|
|
1407
|
+
type TextGenAudioInput = FromSchema<typeof _slot_text_gen_audio_inputs>;
|
|
1408
|
+
declare const _slot_text_gen_audio_outputs: {
|
|
1409
|
+
readonly type: "object";
|
|
1410
|
+
readonly required: readonly ["success"];
|
|
1411
|
+
readonly properties: {
|
|
1412
|
+
readonly success: {
|
|
1413
|
+
readonly type: "boolean";
|
|
1414
|
+
};
|
|
1415
|
+
readonly error: {
|
|
1416
|
+
readonly type: "string";
|
|
1417
|
+
};
|
|
1418
|
+
readonly audio: {
|
|
1419
|
+
readonly type: "object";
|
|
1420
|
+
readonly required: readonly ["file_key"];
|
|
1421
|
+
readonly properties: {
|
|
1422
|
+
readonly file_key: {
|
|
1423
|
+
readonly type: "string";
|
|
1424
|
+
readonly minLength: 1;
|
|
1425
|
+
};
|
|
1426
|
+
readonly mime: {
|
|
1427
|
+
readonly type: "string";
|
|
1428
|
+
};
|
|
1429
|
+
readonly filename: {
|
|
1430
|
+
readonly type: "string";
|
|
1431
|
+
};
|
|
1432
|
+
};
|
|
1433
|
+
readonly additionalProperties: false;
|
|
1434
|
+
};
|
|
1435
|
+
};
|
|
1436
|
+
readonly additionalProperties: false;
|
|
1437
|
+
};
|
|
1438
|
+
type TextGenAudioOutput = FromSchema<typeof _slot_text_gen_audio_outputs>;
|
|
1353
1439
|
declare const _slot_text_gen_speech_preset_inputs: {
|
|
1354
1440
|
readonly type: "object";
|
|
1355
1441
|
readonly required: readonly ["text"];
|
|
@@ -3586,9 +3672,9 @@ declare const _slot_denoise_audio_outputs: {
|
|
|
3586
3672
|
type DenoiseAudioOutput = FromSchema<typeof _slot_denoise_audio_outputs>;
|
|
3587
3673
|
declare const _slot_convert_voice_inputs: {
|
|
3588
3674
|
readonly type: "object";
|
|
3589
|
-
readonly required: readonly ["
|
|
3675
|
+
readonly required: readonly ["audio", "ref_audio"];
|
|
3590
3676
|
readonly properties: {
|
|
3591
|
-
readonly
|
|
3677
|
+
readonly audio: {
|
|
3592
3678
|
readonly type: "object";
|
|
3593
3679
|
readonly required: readonly ["bytesBase64"];
|
|
3594
3680
|
readonly properties: {
|
|
@@ -3605,8 +3691,22 @@ declare const _slot_convert_voice_inputs: {
|
|
|
3605
3691
|
};
|
|
3606
3692
|
readonly additionalProperties: false;
|
|
3607
3693
|
};
|
|
3608
|
-
readonly
|
|
3609
|
-
readonly type: "
|
|
3694
|
+
readonly ref_audio: {
|
|
3695
|
+
readonly type: "object";
|
|
3696
|
+
readonly required: readonly ["bytesBase64"];
|
|
3697
|
+
readonly properties: {
|
|
3698
|
+
readonly bytesBase64: {
|
|
3699
|
+
readonly type: "string";
|
|
3700
|
+
readonly minLength: 1;
|
|
3701
|
+
};
|
|
3702
|
+
readonly filename: {
|
|
3703
|
+
readonly type: "string";
|
|
3704
|
+
};
|
|
3705
|
+
readonly mime: {
|
|
3706
|
+
readonly type: "string";
|
|
3707
|
+
};
|
|
3708
|
+
};
|
|
3709
|
+
readonly additionalProperties: false;
|
|
3610
3710
|
};
|
|
3611
3711
|
};
|
|
3612
3712
|
readonly additionalProperties: false;
|
|
@@ -4101,7 +4201,7 @@ declare const _slot_video_gen_model_outputs: {
|
|
|
4101
4201
|
readonly additionalProperties: false;
|
|
4102
4202
|
};
|
|
4103
4203
|
type VideoGenModelOutput = FromSchema<typeof _slot_video_gen_model_outputs>;
|
|
4104
|
-
type NodeSlot = "gen-text" | "split-text" | "combine-text" | "image-fusion" | "images-gen-video" | "refs-gen-video" | "image-gen-text" | "video-gen-text" | "transcribe" | "concat-videos" | "extract-audio" | "remove-video-audio" | "merge-video-audio" | "audio-video-lip-sync" | "get-first-frame" | "get-last-frame" | "parse-document" | "split-video" | "link" | "image-gen" | "gen-music" | "text-gen-speech-preset" | "image-gen-video" | "image-edit" | "image-upscale" | "video-upscale" | "video-edit" | "image-describe" | "video-describe" | "audio-describe" | "music-repaint" | "music-cover" | "music-extract" | "separate-sound" | "music-lego" | "music-complete" | "music-brief" | "audio-image-gen-video" | "speech-text-gen-video" | "video-image-gen-video-mix" | "video-image-gen-video-move" | "image-image-gen-video" | "text-gen-video" | "image-gen-model" | "speech-video-gen-video" | "text-gen-speech-clone" | "transcribe-timestamp" | "text-gen-speech-instruct" | "drop-video" | "arrange-group" | "separate_speaker" | "separate_audio_track" | "denoise_audio" | "convert_voice" | "remove_watermark" | "subtitle_remove" | "text-audio-gen-speech" | "image-pose" | "image-body-seg" | "image-normal" | "image-matting" | "video-gen-model";
|
|
4204
|
+
type NodeSlot = "gen-text" | "split-text" | "combine-text" | "image-fusion" | "images-gen-video" | "refs-gen-video" | "image-gen-text" | "video-gen-text" | "transcribe" | "concat-videos" | "extract-audio" | "remove-video-audio" | "merge-video-audio" | "audio-video-lip-sync" | "get-first-frame" | "get-last-frame" | "parse-document" | "split-video" | "link" | "image-gen" | "gen-music" | "text-gen-audio" | "text-gen-speech-preset" | "image-gen-video" | "image-edit" | "image-upscale" | "video-upscale" | "video-edit" | "image-describe" | "video-describe" | "audio-describe" | "music-repaint" | "music-cover" | "music-extract" | "separate-sound" | "music-lego" | "music-complete" | "music-brief" | "audio-image-gen-video" | "speech-text-gen-video" | "video-image-gen-video-mix" | "video-image-gen-video-move" | "image-image-gen-video" | "text-gen-video" | "image-gen-model" | "speech-video-gen-video" | "text-gen-speech-clone" | "transcribe-timestamp" | "text-gen-speech-instruct" | "drop-video" | "arrange-group" | "separate_speaker" | "separate_audio_track" | "denoise_audio" | "convert_voice" | "remove_watermark" | "subtitle_remove" | "text-audio-gen-speech" | "image-pose" | "image-body-seg" | "image-normal" | "image-matting" | "video-gen-model";
|
|
4105
4205
|
type SlotInputsMap = {
|
|
4106
4206
|
"gen-text": GenTextInput;
|
|
4107
4207
|
"split-text": SplitTextInput;
|
|
@@ -4124,6 +4224,7 @@ type SlotInputsMap = {
|
|
|
4124
4224
|
link: LinkInput;
|
|
4125
4225
|
"image-gen": ImageGenInput;
|
|
4126
4226
|
"gen-music": GenMusicInput;
|
|
4227
|
+
"text-gen-audio": TextGenAudioInput;
|
|
4127
4228
|
"text-gen-speech-preset": TextGenSpeechPresetInput;
|
|
4128
4229
|
"image-gen-video": ImageGenVideoInput;
|
|
4129
4230
|
"image-edit": ImageEditInput;
|
|
@@ -4188,6 +4289,7 @@ type SlotOutputsMap = {
|
|
|
4188
4289
|
link: LinkOutput;
|
|
4189
4290
|
"image-gen": ImageGenOutput;
|
|
4190
4291
|
"gen-music": GenMusicOutput;
|
|
4292
|
+
"text-gen-audio": TextGenAudioOutput;
|
|
4191
4293
|
"text-gen-speech-preset": TextGenSpeechPresetOutput;
|
|
4192
4294
|
"image-gen-video": ImageGenVideoOutput;
|
|
4193
4295
|
"image-edit": ImageEditOutput;
|
|
@@ -4292,6 +4394,62 @@ declare function sourceHandleId(field: string): string;
|
|
|
4292
4394
|
declare function parseTargetHandleId(handle: string | null | undefined): string | undefined;
|
|
4293
4395
|
declare function parseSourceHandleId(handle: string | null | undefined): string | undefined;
|
|
4294
4396
|
//#endregion
|
|
4397
|
+
//#region src/core/abi/node-actions.d.ts
|
|
4398
|
+
/** How many nodes of each modality the selection holds. */
|
|
4399
|
+
type SelectionCounts = Partial<Record<DataNodeType, number>>;
|
|
4400
|
+
/** Inclusive `[min, max]`; `max` may be `Infinity`. */
|
|
4401
|
+
type Range = readonly [number, number];
|
|
4402
|
+
interface NodeActionMeta {
|
|
4403
|
+
/** i18n key under `Workspace.smartIsland`. */
|
|
4404
|
+
label: string;
|
|
4405
|
+
/** Ascending sort order within a toolbar. */
|
|
4406
|
+
order: number;
|
|
4407
|
+
/** Product caps the ABI doesn't express, per modality. */
|
|
4408
|
+
limits?: Partial<Record<DataNodeType, Range>>;
|
|
4409
|
+
/** Cap on image + video + audio nodes combined. */
|
|
4410
|
+
totalMedia?: Range;
|
|
4411
|
+
/**
|
|
4412
|
+
* Modalities accepted in place of another one. A 3D model node feeds the
|
|
4413
|
+
* image handles of `image-gen-text` / `image-gen-video` — the canvas
|
|
4414
|
+
* renders a preview frame for it.
|
|
4415
|
+
*/
|
|
4416
|
+
aliases?: Partial<Record<DataNodeType, DataNodeType>>;
|
|
4417
|
+
/**
|
|
4418
|
+
* Acts on the files *inside* one grouped node (a video node holding
|
|
4419
|
+
* several clips), not on a multi-node selection.
|
|
4420
|
+
*/
|
|
4421
|
+
groupOnly?: boolean;
|
|
4422
|
+
/** Needs at least this many selected nodes. */
|
|
4423
|
+
minNodes?: number;
|
|
4424
|
+
}
|
|
4425
|
+
interface NodeActionCandidate {
|
|
4426
|
+
nodeType: string;
|
|
4427
|
+
feature: NodeSlot;
|
|
4428
|
+
label: string;
|
|
4429
|
+
order: number;
|
|
4430
|
+
}
|
|
4431
|
+
/**
|
|
4432
|
+
* Per-node-type presentation + caps. Every ABI node type must appear here (a
|
|
4433
|
+
* vitest guard fails otherwise) so a new slot can't quietly end up without an
|
|
4434
|
+
* entry point. Order groups by the modality a button hangs off: text 100s,
|
|
4435
|
+
* image 200s, video 300s, audio 400s, document/link/model 500s, combos 600s.
|
|
4436
|
+
*/
|
|
4437
|
+
declare const NODE_ACTION_META: Readonly<Record<string, NodeActionMeta>>;
|
|
4438
|
+
interface SelectionOptions {
|
|
4439
|
+
/**
|
|
4440
|
+
* The one selected node holds several files (or several texts), so
|
|
4441
|
+
* actions that operate within a group — filter, arrange, concat — apply.
|
|
4442
|
+
*/
|
|
4443
|
+
group?: boolean;
|
|
4444
|
+
}
|
|
4445
|
+
/**
|
|
4446
|
+
* Node types the given selection can be turned into, ordered for display.
|
|
4447
|
+
*
|
|
4448
|
+
* `counts` holds only modality nodes — the caller drops processing nodes and
|
|
4449
|
+
* `add*` nodes before calling, since neither carries an output to feed.
|
|
4450
|
+
*/
|
|
4451
|
+
declare function nodeActionsForSelection(counts: SelectionCounts, options?: SelectionOptions): NodeActionCandidate[];
|
|
4452
|
+
//#endregion
|
|
4295
4453
|
//#region src/core/abi/sources.d.ts
|
|
4296
4454
|
interface HandleOverride {
|
|
4297
4455
|
kind: "handle";
|
|
@@ -4555,9 +4713,15 @@ interface FlowCoreState {
|
|
|
4555
4713
|
*/
|
|
4556
4714
|
expands: (nodeId: string | null, possibleNodes: PossibleNode[]) => string[];
|
|
4557
4715
|
/** Create a node fed by every combo-selected node; returns the new id. */
|
|
4716
|
+
/**
|
|
4717
|
+
* Create a node from the combo selection and wire every selected node into
|
|
4718
|
+
* it. `sourceOrder` overrides the selection order used to assign handles
|
|
4719
|
+
* (sources are matched to target fields in ABI input order).
|
|
4720
|
+
*/
|
|
4558
4721
|
compose: (newNode: {
|
|
4559
4722
|
type: string;
|
|
4560
4723
|
data: unknown;
|
|
4724
|
+
sourceOrder?: string[];
|
|
4561
4725
|
}) => string;
|
|
4562
4726
|
/** Replace a node's `data`. `history: false` skips the undo snapshot. */
|
|
4563
4727
|
updates: (nodeId: string, data: Record<string, unknown>, opts?: {
|
|
@@ -4653,6 +4817,9 @@ interface GraphPatchAddNode {
|
|
|
4653
4817
|
/** Optional explicit plugin choice; omitted → resolved on mount. */
|
|
4654
4818
|
pluginId?: string;
|
|
4655
4819
|
pluginModel?: string;
|
|
4820
|
+
/** Optional advanced parameters for the chosen plugin (its
|
|
4821
|
+
* `TONGFLOW_SLOT_PARAMS` keys). */
|
|
4822
|
+
pluginParams?: Record<string, unknown>;
|
|
4656
4823
|
/**
|
|
4657
4824
|
* 1-based index into the pending chat attachments. The executor substitutes
|
|
4658
4825
|
* the real storage key so the model never transcribes a fileKey.
|
|
@@ -5014,34 +5181,97 @@ declare const getFeatureRegistryAliases: () => {
|
|
|
5014
5181
|
};
|
|
5015
5182
|
//#endregion
|
|
5016
5183
|
//#region src/core/registry/plugins-registry-schema.d.ts
|
|
5017
|
-
|
|
5018
|
-
|
|
5019
|
-
|
|
5020
|
-
|
|
5021
|
-
|
|
5022
|
-
|
|
5023
|
-
|
|
5024
|
-
|
|
5025
|
-
|
|
5026
|
-
|
|
5027
|
-
|
|
5028
|
-
|
|
5029
|
-
|
|
5030
|
-
|
|
5031
|
-
|
|
5032
|
-
|
|
5184
|
+
declare const PluginParamSpecSchema: z.ZodObject<{
|
|
5185
|
+
type: z.ZodEnum<{
|
|
5186
|
+
number: "number";
|
|
5187
|
+
boolean: "boolean";
|
|
5188
|
+
text: "text";
|
|
5189
|
+
integer: "integer";
|
|
5190
|
+
select: "select";
|
|
5191
|
+
}>;
|
|
5192
|
+
label: z.ZodOptional<z.ZodString>;
|
|
5193
|
+
description: z.ZodOptional<z.ZodString>;
|
|
5194
|
+
default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
|
|
5195
|
+
options: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
|
|
5196
|
+
min: z.ZodOptional<z.ZodNumber>;
|
|
5197
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
5198
|
+
step: z.ZodOptional<z.ZodNumber>;
|
|
5199
|
+
models: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
5200
|
+
}, z.core.$strip>;
|
|
5033
5201
|
declare const PluginMethodSchema: z.ZodObject<{
|
|
5034
5202
|
methodName: z.ZodString;
|
|
5035
5203
|
models: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
5204
|
+
params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
5205
|
+
type: z.ZodEnum<{
|
|
5206
|
+
number: "number";
|
|
5207
|
+
boolean: "boolean";
|
|
5208
|
+
text: "text";
|
|
5209
|
+
integer: "integer";
|
|
5210
|
+
select: "select";
|
|
5211
|
+
}>;
|
|
5212
|
+
label: z.ZodOptional<z.ZodString>;
|
|
5213
|
+
description: z.ZodOptional<z.ZodString>;
|
|
5214
|
+
default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
|
|
5215
|
+
options: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
|
|
5216
|
+
min: z.ZodOptional<z.ZodNumber>;
|
|
5217
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
5218
|
+
step: z.ZodOptional<z.ZodNumber>;
|
|
5219
|
+
models: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
5220
|
+
}, z.core.$strip>>>;
|
|
5221
|
+
}, z.core.$strip>;
|
|
5222
|
+
/**
|
|
5223
|
+
* Optional live model catalog (`TONGFLOW_MODEL_CATALOG` in the plugin source).
|
|
5224
|
+
* The canvas GETs `url` in the browser (public, CORS-enabled, no auth) — or,
|
|
5225
|
+
* when `authEnv` names the env key holding a bearer token, through the app's
|
|
5226
|
+
* `/api/plugins/model-catalog` route, which injects the stored key server-side
|
|
5227
|
+
* — reads the record array at dot-path `items`, each model id at dot-path `id`, drops
|
|
5228
|
+
* records where an `exclude` field equals its literal, and keeps a record for
|
|
5229
|
+
* a slot when every `slots[slot]` token is a substring of the named field
|
|
5230
|
+
* (arrays/objects are JSON-serialized before matching; a token prefixed with
|
|
5231
|
+
* `!` must be absent instead). Matching ids extend
|
|
5232
|
+
* that slot's dropdown after the static `models` shortlist.
|
|
5233
|
+
*/
|
|
5234
|
+
declare const PluginModelCatalogSchema: z.ZodObject<{
|
|
5235
|
+
url: z.ZodString;
|
|
5236
|
+
authEnv: z.ZodOptional<z.ZodString>;
|
|
5237
|
+
items: z.ZodDefault<z.ZodString>;
|
|
5238
|
+
id: z.ZodDefault<z.ZodString>;
|
|
5239
|
+
exclude: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber]>>>;
|
|
5240
|
+
slots: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
|
|
5036
5241
|
}, z.core.$strip>;
|
|
5037
5242
|
declare const PluginConfigSchema: z.ZodObject<{
|
|
5038
5243
|
localSubdir: z.ZodString;
|
|
5039
5244
|
methodsByNodeSlot: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
5040
5245
|
methodName: z.ZodString;
|
|
5041
5246
|
models: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
5247
|
+
params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
5248
|
+
type: z.ZodEnum<{
|
|
5249
|
+
number: "number";
|
|
5250
|
+
boolean: "boolean";
|
|
5251
|
+
text: "text";
|
|
5252
|
+
integer: "integer";
|
|
5253
|
+
select: "select";
|
|
5254
|
+
}>;
|
|
5255
|
+
label: z.ZodOptional<z.ZodString>;
|
|
5256
|
+
description: z.ZodOptional<z.ZodString>;
|
|
5257
|
+
default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
|
|
5258
|
+
options: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
|
|
5259
|
+
min: z.ZodOptional<z.ZodNumber>;
|
|
5260
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
5261
|
+
step: z.ZodOptional<z.ZodNumber>;
|
|
5262
|
+
models: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
5263
|
+
}, z.core.$strip>>>;
|
|
5042
5264
|
}, z.core.$strip>>;
|
|
5043
5265
|
entryFile: z.ZodOptional<z.ZodString>;
|
|
5044
5266
|
needsDeploy: z.ZodOptional<z.ZodBoolean>;
|
|
5267
|
+
modelCatalog: z.ZodOptional<z.ZodObject<{
|
|
5268
|
+
url: z.ZodString;
|
|
5269
|
+
authEnv: z.ZodOptional<z.ZodString>;
|
|
5270
|
+
items: z.ZodDefault<z.ZodString>;
|
|
5271
|
+
id: z.ZodDefault<z.ZodString>;
|
|
5272
|
+
exclude: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber]>>>;
|
|
5273
|
+
slots: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
|
|
5274
|
+
}, z.core.$strip>>;
|
|
5045
5275
|
name: z.ZodOptional<z.ZodString>;
|
|
5046
5276
|
description: z.ZodOptional<z.ZodString>;
|
|
5047
5277
|
icon: z.ZodOptional<z.ZodString>;
|
|
@@ -5056,9 +5286,34 @@ declare const PluginsRegistrySchema: z.ZodObject<{
|
|
|
5056
5286
|
methodsByNodeSlot: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
5057
5287
|
methodName: z.ZodString;
|
|
5058
5288
|
models: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
5289
|
+
params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
5290
|
+
type: z.ZodEnum<{
|
|
5291
|
+
number: "number";
|
|
5292
|
+
boolean: "boolean";
|
|
5293
|
+
text: "text";
|
|
5294
|
+
integer: "integer";
|
|
5295
|
+
select: "select";
|
|
5296
|
+
}>;
|
|
5297
|
+
label: z.ZodOptional<z.ZodString>;
|
|
5298
|
+
description: z.ZodOptional<z.ZodString>;
|
|
5299
|
+
default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
|
|
5300
|
+
options: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
|
|
5301
|
+
min: z.ZodOptional<z.ZodNumber>;
|
|
5302
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
5303
|
+
step: z.ZodOptional<z.ZodNumber>;
|
|
5304
|
+
models: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
5305
|
+
}, z.core.$strip>>>;
|
|
5059
5306
|
}, z.core.$strip>>;
|
|
5060
5307
|
entryFile: z.ZodOptional<z.ZodString>;
|
|
5061
5308
|
needsDeploy: z.ZodOptional<z.ZodBoolean>;
|
|
5309
|
+
modelCatalog: z.ZodOptional<z.ZodObject<{
|
|
5310
|
+
url: z.ZodString;
|
|
5311
|
+
authEnv: z.ZodOptional<z.ZodString>;
|
|
5312
|
+
items: z.ZodDefault<z.ZodString>;
|
|
5313
|
+
id: z.ZodDefault<z.ZodString>;
|
|
5314
|
+
exclude: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber]>>>;
|
|
5315
|
+
slots: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
|
|
5316
|
+
}, z.core.$strip>>;
|
|
5062
5317
|
name: z.ZodOptional<z.ZodString>;
|
|
5063
5318
|
description: z.ZodOptional<z.ZodString>;
|
|
5064
5319
|
icon: z.ZodOptional<z.ZodString>;
|
|
@@ -5070,6 +5325,39 @@ declare const PluginsRegistrySchema: z.ZodObject<{
|
|
|
5070
5325
|
}, z.core.$strip>;
|
|
5071
5326
|
type PluginsRegistry = z.infer<typeof PluginsRegistrySchema>;
|
|
5072
5327
|
type PluginConfig = z.infer<typeof PluginConfigSchema>;
|
|
5328
|
+
type PluginModelCatalog = z.infer<typeof PluginModelCatalogSchema>;
|
|
5329
|
+
type PluginParamSpec = z.infer<typeof PluginParamSpecSchema>;
|
|
5330
|
+
//#endregion
|
|
5331
|
+
//#region src/core/registry/model-catalog.d.ts
|
|
5332
|
+
/**
|
|
5333
|
+
* Filter a fetched catalog payload into `slot -> model ids`, applying the
|
|
5334
|
+
* plugin's declared `exclude` and per-slot `slots` rules (substring tokens,
|
|
5335
|
+
* `!`-prefixed = must be absent). Ids keep catalog order; malformed records
|
|
5336
|
+
* are skipped. Pure — the fetch lives in the canvas.
|
|
5337
|
+
*/
|
|
5338
|
+
declare function filterModelCatalog(catalog: PluginModelCatalog, payload: unknown): Record<string, string[]>;
|
|
5339
|
+
//#endregion
|
|
5340
|
+
//#region src/core/registry/plugin-params.d.ts
|
|
5341
|
+
/** A plugin's declared params for one slot, in declaration order. */
|
|
5342
|
+
type PluginParamEntry = {
|
|
5343
|
+
name: string;
|
|
5344
|
+
spec: PluginParamSpec;
|
|
5345
|
+
};
|
|
5346
|
+
/**
|
|
5347
|
+
* The params a node offers for the active plugin + model: every declared entry
|
|
5348
|
+
* whose `models` gate is absent or names the selected model.
|
|
5349
|
+
*/
|
|
5350
|
+
declare function visiblePluginParams(params: Record<string, PluginParamSpec> | undefined, model: string | undefined): PluginParamEntry[];
|
|
5351
|
+
/** True when `value` is a legal setting for `spec` (type + range/options). */
|
|
5352
|
+
declare function isValidPluginParamValue(spec: PluginParamSpec, value: unknown): boolean;
|
|
5353
|
+
/**
|
|
5354
|
+
* Keep only the entries of `values` that the visible params accept and that
|
|
5355
|
+
* differ from the declared default. Unset means "plugin default", so a value
|
|
5356
|
+
* equal to it is dropped; the result is what travels to the plugin.
|
|
5357
|
+
*/
|
|
5358
|
+
declare function normalizePluginParams(entries: PluginParamEntry[], values: Record<string, unknown> | undefined): Record<string, unknown>;
|
|
5359
|
+
/** Shallow key/value equality for two param records. */
|
|
5360
|
+
declare function samePluginParams(a: Record<string, unknown> | undefined, b: Record<string, unknown> | undefined): boolean;
|
|
5073
5361
|
//#endregion
|
|
5074
5362
|
//#region src/core/schema/abi-version.d.ts
|
|
5075
5363
|
/**
|
|
@@ -5154,6 +5442,10 @@ interface BaseNodeData extends Record<string, unknown> {
|
|
|
5154
5442
|
/** Selected model for router-style plugins that declare per-slot model
|
|
5155
5443
|
* lists; empty/absent means the plugin's default. */
|
|
5156
5444
|
pluginModel?: string;
|
|
5445
|
+
/** Advanced parameters chosen for the active plugin (keys from its
|
|
5446
|
+
* `TONGFLOW_SLOT_PARAMS`); only values differing from the declared default
|
|
5447
|
+
* are kept, so absent means the plugin's own default. */
|
|
5448
|
+
pluginParams?: Record<string, unknown>;
|
|
5157
5449
|
/** Composition linkage (`useNodesData`) */
|
|
5158
5450
|
ids?: string[];
|
|
5159
5451
|
texts?: string[];
|
|
@@ -5338,6 +5630,9 @@ interface ExecutableNode {
|
|
|
5338
5630
|
/** Model chosen on the canvas for router-style plugins that declare
|
|
5339
5631
|
* per-slot model lists; absent = plugin default. */
|
|
5340
5632
|
model?: string;
|
|
5633
|
+
/** Advanced parameters chosen on the canvas (plugin's `TONGFLOW_SLOT_PARAMS`
|
|
5634
|
+
* keys); absent = plugin defaults. Rides to the plugin as `_params`. */
|
|
5635
|
+
params?: Record<string, unknown>;
|
|
5341
5636
|
/** Node display name (used for mobile execution progress display) */
|
|
5342
5637
|
label?: string;
|
|
5343
5638
|
/** Node comment */
|
|
@@ -5467,6 +5762,12 @@ interface ExportOptions {
|
|
|
5467
5762
|
/** Whether to include the original flow data */
|
|
5468
5763
|
includeOriginalFlow?: boolean;
|
|
5469
5764
|
}
|
|
5765
|
+
/**
|
|
5766
|
+
* Workflow input name for a level-0 data / add node: an explicit
|
|
5767
|
+
* `data.inputName` (a-z, 0-9, _ , -; set by authors so bindings read
|
|
5768
|
+
* `refs`, `prompt` …) else the legacy `input_<id8>`.
|
|
5769
|
+
*/
|
|
5770
|
+
declare function inputNameFor(nodeId: string, nodeData: Record<string, unknown>): string;
|
|
5470
5771
|
declare class WorkflowExporter {
|
|
5471
5772
|
private nodes;
|
|
5472
5773
|
private edges;
|
|
@@ -5796,4 +6097,4 @@ declare function isWorkflowValid(workflow: WorkflowJSON | {
|
|
|
5796
6097
|
edges: Edge[];
|
|
5797
6098
|
}): boolean;
|
|
5798
6099
|
//#endregion
|
|
5799
|
-
export { ABI_DEFINITIONS, ABI_NODES, ADD_NODE_OUTPUT_TYPE, ADD_NODE_TYPES, AbiNodeSchemas, AbiNodeSpec, AbiSchemaEdgeResult, AbiTopology, AddTextNodeData, AgentAttachment, AgentToolDefinition, AnySourceSpec, ApplyGraphPatchOptions, ArrangeGroupInput, ArrangeGroupOutput, AspectRatio, Asset, AudioDescribeInput, AudioDescribeOutput, AudioImageGenVideoInput, AudioImageGenVideoOutput, AudioVideoLipSyncInput, AudioVideoLipSyncOutput, AutoLayoutOptions, BaseNodeData, BuildPromptsArgs, COMPONENT_V_GAP, CombineTextInput, CombineTextOutput, ComposeNodeData, ConcatVideosInput, ConcatVideosOutput, ConfigOverride, ConvertVoiceInput, ConvertVoiceOutput, DATA_NODE_TYPES, DataNode, DataNodeData, DataNodeType, DenoiseAudioInput, DenoiseAudioOutput, DropVideoInput, DropVideoOutput, Duration, EdgeTargetOption, ExecutableNode, ExecutableWorkflow, ExecuteToolContext, ExecutionPlan, ExportOptions, ExtractAudioInput, ExtractAudioOutput, FeatureDefinition, FeatureRegistryBundle, FeatureRegistryBundleSchema, FieldBinding, FieldClass, FieldSourceOverride, FlowCoreState, FlowSnapshot, FlowStore, FlowStoreOptions, FlowWorkflowMeta, GenMusicInput, GenMusicOutput, GenTextInput, GenTextOutput, GetFirstFrameInput, GetFirstFrameOutput, GetLastFrameInput, GetLastFrameOutput, GraphPatch, GraphPatchAddEdge, GraphPatchAddNode, GraphPatchUpdateNode, HISTORY_LIMIT, H_GAP, HandleOverride, IMAGE_ASPECT_RATIOS, IMAGE_RESOLUTION_TIERS, ImageBodySegInput, ImageBodySegOutput, ImageDescribeInput, ImageDescribeOutput, ImageEditInput, ImageEditOutput, ImageFusionInput, ImageFusionOutput, ImageGenInput, ImageGenModelInput, ImageGenModelOutput, ImageGenOutput, ImageGenTextInput, ImageGenTextOutput, ImageGenVideoInput, ImageGenVideoOutput, ImageImageGenVideoInput, ImageImageGenVideoOutput, ImageMattingInput, ImageMattingOutput, ImageNormalInput, ImageNormalOutput, ImagePoseInput, ImagePoseOutput, ImageUpscaleInput, ImageUpscaleOutput, ImagesGenVideoInput, ImagesGenVideoOutput, InputOverride, InstalledPluginsView, KNOWN_NODE_TYPES, LinkInput, LinkOutput, MEDIA_NODE_MAX_DISPLAY_WIDTH_PX, MEDIA_NODE_MIN_DISPLAY_WIDTH_PX, MEDIA_NODE_REF_DISPLAY_WIDTH_PX, MEDIA_NODE_REF_LONG_EDGE_PX, MIN_SUPPORTED_ABI_VERSION, MODALITY_NODE_TYPES, MergeVideoAudioInput, MergeVideoAudioOutput, ModalityNodeType, MusicBriefInput, MusicBriefOutput, MusicCompleteInput, MusicCompleteOutput, MusicCoverInput, MusicCoverOutput, MusicExtractInput, MusicExtractOutput, MusicLegoInput, MusicLegoOutput, MusicRepaintInput, MusicRepaintOutput, NODE_TYPE_SOURCE_SPEC, NODE_TYPE_TO_ABI_FEATURE, NodeExecutionInfo, NodeExecutionStatus, NodeKind, NodeSize, NodeSlot, NodeStatus, NodeStatusType, OutputHandle, OutputNodeType, OutputRoute, ParseDocumentInput, ParseDocumentOutput, ParsedWorkflowImport, PatchStepResult, PluginConfig, PluginConfigSchema, PluginMethodSchema, PluginsRegistry, PluginsRegistrySchema, PossibleNode, RUNNING_STATUSES, ReadCanvasOptions, RefName, RefsGenVideoInput, RefsGenVideoOutput, RemoveVideoAudioInput, RemoveVideoAudioOutput, RemoveWatermarkInput, RemoveWatermarkOutput, RenderCanvasOptions, ResolutionTier, ResolvedField, ResolvedOutputRoute, ResolvedSpec, RfDataNodeProps, SHORT_ID_LENGTH, SSEStatusType, SeparateAudioTrackInput, SeparateAudioTrackOutput, SeparateSoundInput, SeparateSoundOutput, SeparateSpeakerInput, SeparateSpeakerOutput, SlotInput, SlotInputsMap, SlotOutput, SlotOutputsMap, SourceSpec, SpeechTextGenVideoInput, SpeechTextGenVideoOutput, SpeechVideoGenVideoInput, SpeechVideoGenVideoOutput, SplitTextInput, SplitTextOutput, SplitVideoInput, SplitVideoOutput, StaticOverride, SubtitleRemoveInput, SubtitleRemoveOutput, TERMINAL_STATUSES, TONGFLOW_ABI_NODES, TONGFLOW_ABI_VERSION, TONGFLOW_TOOL_DEFS, TONGFLOW_TOOL_NAMES, TaskStatus, TaskStatusType, TextAudioGenSpeechInput, TextAudioGenSpeechOutput, TextGenSpeechCloneInput, TextGenSpeechCloneOutput, TextGenSpeechInstructInput, TextGenSpeechInstructOutput, TextGenSpeechPresetInput, TextGenSpeechPresetOutput, TextGenVideoInput, TextGenVideoOutput, TongflowAbiNode, TongflowPluginNode, TongflowPluginNodeData, TongflowPluginNodeProps, TongflowToolName, ToolErr, ToolOk, ToolResult, TranscribeInput, TranscribeOutput, TranscribeTimestampInput, TranscribeTimestampOutput, TransferNodeData, VIDEO_ASPECT_RATIOS, VIDEO_DURATIONS, VIDEO_DURATION_DEFAULT, VIDEO_DURATION_MAX, VIDEO_DURATION_MIN, V_GAP, ValidateWorkflowOptions, VideoDescribeInput, VideoDescribeOutput, VideoEditInput, VideoEditOutput, VideoGenModelInput, VideoGenModelOutput, VideoGenTextInput, VideoGenTextOutput, VideoImageGenVideoMixInput, VideoImageGenVideoMixOutput, VideoImageGenVideoMoveInput, VideoImageGenVideoMoveOutput, VideoUpscaleInput, VideoUpscaleOutput, WORKFLOW_IMPORT_NO_CANVAS, WorkflowExecutor, WorkflowExporter, WorkflowInput, WorkflowJSON, WorkflowOutput, WorkflowParser, WorkflowStatus, WorkflowStatusType, abiSpecForNodeType, addEdgeIfAbsent, applyGraphPatch, batchOn, buildFeatureRegistry, buildPrompts, bumpFocusGeneration, clampVideoDuration, closestNodeTypes, coerceBaseNodeData, collectAll, collectHandleValues, compareAbiProducerConsumerSchemas, componentsContaining, computeAutoLayout, configField, createFlowSlice, createFlowStore, currentFocusGeneration, describeNodeType, edgeShapeError, estimateNodeSize, executeGraphTool, exportWorkflow, featureForNodeType, getAbiNodeBySlot, getAbiOutputRoutesBySlot, getAbiTopology, getAllFeatures, getAspectRatioIconSize, getEdgeTargetOptions, getEffectiveOutputType, getFeatureByName, getFeatureRegistryAliases, getValueByPath, getWorkflowEndNodes, getWorkflowStartNodes, handle, hasDuplicateAddSourceEdge, hasDuplicateTargetHandle, isAbiNodeType, isKnownNodeType, isModalityNode, isRunningStatus, isTerminalStatus, isValidFlowConnection, isWorkflowValid, logger, mapSSEStatusToTaskStatus, neighborhood, nodeKind, parseExecutableWorkflow, parseSourceHandleId, parseTargetHandleId, parseWorkflow, parseWorkflowImportJson, promptMissingRequired, proportionalMediaNodeWidthPx, pushSnapshot, readCanvas, renderCanvas, resolveAbiOutputMappings, resolveCanonicalFeatureName, resolveEdgeHandles, resolveLabelLookupFeatureName, resolveNodeRef, resolveSpec, resolvedSpecForNodeType, shortId, singleEdgeTextScalarTargetHandles, snapshotFlow, sourceHandleId, sourceSpecForNodeType, staticValue, stringifyExecutableWorkflow, targetHandleId, tryAbiCompatibility, validateFeatureRegistryBundle, validateWorkflow, workflowInput };
|
|
6100
|
+
export { ABI_DEFINITIONS, ABI_NODES, ADD_NODE_OUTPUT_TYPE, ADD_NODE_TYPES, AbiNodeSchemas, AbiNodeSpec, AbiSchemaEdgeResult, AbiTopology, AddTextNodeData, AgentAttachment, AgentToolDefinition, AnySourceSpec, ApplyGraphPatchOptions, ArrangeGroupInput, ArrangeGroupOutput, AspectRatio, Asset, AudioDescribeInput, AudioDescribeOutput, AudioImageGenVideoInput, AudioImageGenVideoOutput, AudioVideoLipSyncInput, AudioVideoLipSyncOutput, AutoLayoutOptions, BaseNodeData, BuildPromptsArgs, COMPONENT_V_GAP, CombineTextInput, CombineTextOutput, ComposeNodeData, ConcatVideosInput, ConcatVideosOutput, ConfigOverride, ConvertVoiceInput, ConvertVoiceOutput, DATA_NODE_TYPES, DataNode, DataNodeData, DataNodeType, DenoiseAudioInput, DenoiseAudioOutput, DropVideoInput, DropVideoOutput, Duration, EdgeTargetOption, ExecutableNode, ExecutableWorkflow, ExecuteToolContext, ExecutionPlan, ExportOptions, ExtractAudioInput, ExtractAudioOutput, FeatureDefinition, FeatureRegistryBundle, FeatureRegistryBundleSchema, FieldBinding, FieldClass, FieldSourceOverride, FlowCoreState, FlowSnapshot, FlowStore, FlowStoreOptions, FlowWorkflowMeta, GenMusicInput, GenMusicOutput, GenTextInput, GenTextOutput, GetFirstFrameInput, GetFirstFrameOutput, GetLastFrameInput, GetLastFrameOutput, GraphPatch, GraphPatchAddEdge, GraphPatchAddNode, GraphPatchUpdateNode, HISTORY_LIMIT, H_GAP, HandleOverride, IMAGE_ASPECT_RATIOS, IMAGE_RESOLUTION_TIERS, ImageBodySegInput, ImageBodySegOutput, ImageDescribeInput, ImageDescribeOutput, ImageEditInput, ImageEditOutput, ImageFusionInput, ImageFusionOutput, ImageGenInput, ImageGenModelInput, ImageGenModelOutput, ImageGenOutput, ImageGenTextInput, ImageGenTextOutput, ImageGenVideoInput, ImageGenVideoOutput, ImageImageGenVideoInput, ImageImageGenVideoOutput, ImageMattingInput, ImageMattingOutput, ImageNormalInput, ImageNormalOutput, ImagePoseInput, ImagePoseOutput, ImageUpscaleInput, ImageUpscaleOutput, ImagesGenVideoInput, ImagesGenVideoOutput, InputOverride, InstalledPluginsView, KNOWN_NODE_TYPES, LinkInput, LinkOutput, MEDIA_NODE_MAX_DISPLAY_WIDTH_PX, MEDIA_NODE_MIN_DISPLAY_WIDTH_PX, MEDIA_NODE_REF_DISPLAY_WIDTH_PX, MEDIA_NODE_REF_LONG_EDGE_PX, MIN_SUPPORTED_ABI_VERSION, MODALITY_NODE_TYPES, MergeVideoAudioInput, MergeVideoAudioOutput, ModalityNodeType, MusicBriefInput, MusicBriefOutput, MusicCompleteInput, MusicCompleteOutput, MusicCoverInput, MusicCoverOutput, MusicExtractInput, MusicExtractOutput, MusicLegoInput, MusicLegoOutput, MusicRepaintInput, MusicRepaintOutput, NODE_ACTION_META, NODE_TYPE_SOURCE_SPEC, NODE_TYPE_TO_ABI_FEATURE, NodeActionCandidate, NodeActionMeta, NodeExecutionInfo, NodeExecutionStatus, NodeKind, NodeSize, NodeSlot, NodeStatus, NodeStatusType, OutputHandle, OutputNodeType, OutputRoute, ParseDocumentInput, ParseDocumentOutput, ParsedWorkflowImport, PatchStepResult, PluginConfig, PluginConfigSchema, PluginMethodSchema, PluginModelCatalog, PluginModelCatalogSchema, PluginParamEntry, PluginParamSpec, PluginParamSpecSchema, PluginsRegistry, PluginsRegistrySchema, PossibleNode, RUNNING_STATUSES, Range, ReadCanvasOptions, RefName, RefsGenVideoInput, RefsGenVideoOutput, RemoveVideoAudioInput, RemoveVideoAudioOutput, RemoveWatermarkInput, RemoveWatermarkOutput, RenderCanvasOptions, ResolutionTier, ResolvedField, ResolvedOutputRoute, ResolvedSpec, RfDataNodeProps, SHORT_ID_LENGTH, SSEStatusType, SelectionCounts, SelectionOptions, SeparateAudioTrackInput, SeparateAudioTrackOutput, SeparateSoundInput, SeparateSoundOutput, SeparateSpeakerInput, SeparateSpeakerOutput, SlotInput, SlotInputsMap, SlotOutput, SlotOutputsMap, SourceSpec, SpeechTextGenVideoInput, SpeechTextGenVideoOutput, SpeechVideoGenVideoInput, SpeechVideoGenVideoOutput, SplitTextInput, SplitTextOutput, SplitVideoInput, SplitVideoOutput, StaticOverride, SubtitleRemoveInput, SubtitleRemoveOutput, TERMINAL_STATUSES, TONGFLOW_ABI_NODES, TONGFLOW_ABI_VERSION, TONGFLOW_TOOL_DEFS, TONGFLOW_TOOL_NAMES, TaskStatus, TaskStatusType, TextAudioGenSpeechInput, TextAudioGenSpeechOutput, TextGenAudioInput, TextGenAudioOutput, TextGenSpeechCloneInput, TextGenSpeechCloneOutput, TextGenSpeechInstructInput, TextGenSpeechInstructOutput, TextGenSpeechPresetInput, TextGenSpeechPresetOutput, TextGenVideoInput, TextGenVideoOutput, TongflowAbiNode, TongflowPluginNode, TongflowPluginNodeData, TongflowPluginNodeProps, TongflowToolName, ToolErr, ToolOk, ToolResult, TranscribeInput, TranscribeOutput, TranscribeTimestampInput, TranscribeTimestampOutput, TransferNodeData, VIDEO_ASPECT_RATIOS, VIDEO_DURATIONS, VIDEO_DURATION_DEFAULT, VIDEO_DURATION_MAX, VIDEO_DURATION_MIN, V_GAP, ValidateWorkflowOptions, VideoDescribeInput, VideoDescribeOutput, VideoEditInput, VideoEditOutput, VideoGenModelInput, VideoGenModelOutput, VideoGenTextInput, VideoGenTextOutput, VideoImageGenVideoMixInput, VideoImageGenVideoMixOutput, VideoImageGenVideoMoveInput, VideoImageGenVideoMoveOutput, VideoUpscaleInput, VideoUpscaleOutput, WORKFLOW_IMPORT_NO_CANVAS, WorkflowExecutor, WorkflowExporter, WorkflowInput, WorkflowJSON, WorkflowOutput, WorkflowParser, WorkflowStatus, WorkflowStatusType, abiSpecForNodeType, addEdgeIfAbsent, applyGraphPatch, batchOn, buildFeatureRegistry, buildPrompts, bumpFocusGeneration, clampVideoDuration, closestNodeTypes, coerceBaseNodeData, collectAll, collectHandleValues, compareAbiProducerConsumerSchemas, componentsContaining, computeAutoLayout, configField, createFlowSlice, createFlowStore, currentFocusGeneration, describeNodeType, edgeShapeError, estimateNodeSize, executeGraphTool, exportWorkflow, featureForNodeType, filterModelCatalog, getAbiNodeBySlot, getAbiOutputRoutesBySlot, getAbiTopology, getAllFeatures, getAspectRatioIconSize, getEdgeTargetOptions, getEffectiveOutputType, getFeatureByName, getFeatureRegistryAliases, getValueByPath, getWorkflowEndNodes, getWorkflowStartNodes, handle, hasDuplicateAddSourceEdge, hasDuplicateTargetHandle, inputNameFor, isAbiNodeType, isKnownNodeType, isModalityNode, isRunningStatus, isTerminalStatus, isValidFlowConnection, isValidPluginParamValue, isWorkflowValid, logger, mapSSEStatusToTaskStatus, neighborhood, nodeActionsForSelection, nodeKind, normalizePluginParams, parseExecutableWorkflow, parseSourceHandleId, parseTargetHandleId, parseWorkflow, parseWorkflowImportJson, promptMissingRequired, proportionalMediaNodeWidthPx, pushSnapshot, readCanvas, renderCanvas, resolveAbiOutputMappings, resolveCanonicalFeatureName, resolveEdgeHandles, resolveLabelLookupFeatureName, resolveNodeRef, resolveSpec, resolvedSpecForNodeType, samePluginParams, shortId, singleEdgeTextScalarTargetHandles, snapshotFlow, sourceHandleId, sourceSpecForNodeType, staticValue, stringifyExecutableWorkflow, targetHandleId, tryAbiCompatibility, validateFeatureRegistryBundle, validateWorkflow, visiblePluginParams, workflowInput };
|