@scenario-labs/sdk 2.3.0 → 2.4.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.
Files changed (97) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.md +26 -0
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts.map +1 -1
  5. package/client.js +9 -1
  6. package/client.js.map +1 -1
  7. package/client.mjs +9 -1
  8. package/client.mjs.map +1 -1
  9. package/lib/cel/environment.d.mts +38 -0
  10. package/lib/cel/environment.d.mts.map +1 -0
  11. package/lib/cel/environment.d.ts +38 -0
  12. package/lib/cel/environment.d.ts.map +1 -0
  13. package/lib/cel/environment.js +52 -0
  14. package/lib/cel/environment.js.map +1 -0
  15. package/lib/cel/environment.mjs +48 -0
  16. package/lib/cel/environment.mjs.map +1 -0
  17. package/lib/cel/functions.d.mts +4 -0
  18. package/lib/cel/functions.d.mts.map +1 -0
  19. package/lib/cel/functions.d.ts +4 -0
  20. package/lib/cel/functions.d.ts.map +1 -0
  21. package/lib/cel/functions.js +67 -0
  22. package/lib/cel/functions.js.map +1 -0
  23. package/lib/cel/functions.mjs +64 -0
  24. package/lib/cel/functions.mjs.map +1 -0
  25. package/lib/cel/index.d.mts +3 -0
  26. package/lib/cel/index.d.mts.map +1 -0
  27. package/lib/cel/index.d.ts +3 -0
  28. package/lib/cel/index.d.ts.map +1 -0
  29. package/lib/cel/index.js +9 -0
  30. package/lib/cel/index.js.map +1 -0
  31. package/lib/cel/index.mjs +3 -0
  32. package/lib/cel/index.mjs.map +1 -0
  33. package/lib/cel/prng.d.mts +28 -0
  34. package/lib/cel/prng.d.mts.map +1 -0
  35. package/lib/cel/prng.d.ts +28 -0
  36. package/lib/cel/prng.d.ts.map +1 -0
  37. package/lib/cel/prng.js +64 -0
  38. package/lib/cel/prng.js.map +1 -0
  39. package/lib/cel/prng.mjs +58 -0
  40. package/lib/cel/prng.mjs.map +1 -0
  41. package/lib/workflow_converter.d.mts +9 -0
  42. package/lib/workflow_converter.d.mts.map +1 -1
  43. package/lib/workflow_converter.d.ts +9 -0
  44. package/lib/workflow_converter.d.ts.map +1 -1
  45. package/lib/workflow_converter.js +64 -18
  46. package/lib/workflow_converter.js.map +1 -1
  47. package/lib/workflow_converter.mjs +64 -18
  48. package/lib/workflow_converter.mjs.map +1 -1
  49. package/lib/workflow_import_validator.d.mts +1 -1
  50. package/lib/workflow_import_validator.d.mts.map +1 -1
  51. package/lib/workflow_import_validator.d.ts +1 -1
  52. package/lib/workflow_import_validator.d.ts.map +1 -1
  53. package/lib/workflow_import_validator.js +1 -0
  54. package/lib/workflow_import_validator.js.map +1 -1
  55. package/lib/workflow_import_validator.mjs +1 -0
  56. package/lib/workflow_import_validator.mjs.map +1 -1
  57. package/package.json +25 -4
  58. package/resources/generate.d.mts +586 -2
  59. package/resources/generate.d.mts.map +1 -1
  60. package/resources/generate.d.ts +586 -2
  61. package/resources/generate.d.ts.map +1 -1
  62. package/resources/generate.js +2 -2
  63. package/resources/generate.js.map +1 -1
  64. package/resources/generate.mjs +2 -2
  65. package/resources/generate.mjs.map +1 -1
  66. package/resources/models/train.d.mts +69 -0
  67. package/resources/models/train.d.mts.map +1 -1
  68. package/resources/models/train.d.ts +69 -0
  69. package/resources/models/train.d.ts.map +1 -1
  70. package/resources/usages.d.mts +22 -2
  71. package/resources/usages.d.mts.map +1 -1
  72. package/resources/usages.d.ts +22 -2
  73. package/resources/usages.d.ts.map +1 -1
  74. package/src/client.ts +9 -1
  75. package/src/lib/cel/environment.ts +81 -0
  76. package/src/lib/cel/functions.ts +109 -0
  77. package/src/lib/cel/index.ts +8 -0
  78. package/src/lib/cel/prng.ts +62 -0
  79. package/src/lib/workflow_converter.ts +104 -17
  80. package/src/lib/workflow_import_validator.ts +3 -1
  81. package/src/resources/generate.ts +705 -4
  82. package/src/resources/models/train.ts +83 -0
  83. package/src/resources/usages.ts +26 -0
  84. package/src/tools/cel.ts +4 -0
  85. package/src/version.ts +1 -1
  86. package/tools/cel.d.mts +2 -0
  87. package/tools/cel.d.mts.map +1 -0
  88. package/tools/cel.d.ts +2 -0
  89. package/tools/cel.d.ts.map +1 -0
  90. package/tools/cel.js +8 -0
  91. package/tools/cel.js.map +1 -0
  92. package/tools/cel.mjs +5 -0
  93. package/tools/cel.mjs.map +1 -0
  94. package/version.d.mts +1 -1
  95. package/version.d.ts +1 -1
  96. package/version.js +1 -1
  97. package/version.mjs +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"usages.d.ts","sourceRoot":"","sources":["../src/resources/usages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usages.d.ts","sourceRoot":"","sources":["../src/resources/usages.ts"],"names":[],"mappings":"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"}
package/src/client.ts CHANGED
@@ -892,11 +892,19 @@ export class Scenario {
892
892
  return () => controller.abort();
893
893
  }
894
894
 
895
- private buildBody({ options: { body, headers: rawHeaders } }: { options: FinalRequestOptions }): {
895
+ private buildBody({ options }: { options: FinalRequestOptions }): {
896
896
  bodyHeaders: HeadersLike;
897
897
  body: BodyInit | undefined;
898
898
  } {
899
+ const { body, headers: rawHeaders } = options;
899
900
  if (!body) {
901
+ // A resource method always passes a `body` key when its operation defines a
902
+ // request body, even if the caller omitted an optional body param. Keep the
903
+ // content-type for those, and only elide it for operations with no body at
904
+ // all (e.g. GET/DELETE).
905
+ if (body == null && 'body' in options) {
906
+ return this.#encoder({ body, headers: buildHeaders([rawHeaders]) });
907
+ }
900
908
  return { bodyHeaders: undefined, body: undefined };
901
909
  }
902
910
  const headers = buildHeaders([rawHeaders]);
@@ -0,0 +1,81 @@
1
+ import { Environment } from '@marcbachmann/cel-js';
2
+
3
+ import { registerBaseFunctions } from './functions';
4
+
5
+ export interface CelFunctionParam {
6
+ name: string;
7
+ description?: string;
8
+ }
9
+
10
+ export interface CelFunctionRegistration {
11
+ /** cel-js signature string, e.g. 'assetJson(string): dyn' */
12
+ signature: string;
13
+ // never[] rest params make any typed handler assignable without casts
14
+ // (parameter contravariance); unknown[] would reject e.g. (id: string) => x.
15
+ handler: (...args: never[]) => unknown;
16
+ description?: string;
17
+ /** Parameter metadata surfaced by env.getDefinitions() (e.g. for UI palettes). */
18
+ params?: CelFunctionParam[];
19
+ }
20
+
21
+ export interface EvaluateCelOptions {
22
+ /** Extra functions registered for this evaluation only. */
23
+ functions?: CelFunctionRegistration[];
24
+ }
25
+
26
+ // cel-js locks an Environment's registry the first time it is cloned: after
27
+ // that, registerFunction on the base env throws "Cannot modify frozen
28
+ // registry". The base env is built and populated exactly once (??= guard);
29
+ // every createCelEnvironment() call clones the locked base, so base
30
+ // registrations can never change after the first clone.
31
+ let baseEnvironment: Environment | undefined;
32
+
33
+ function getBaseEnvironment(): Environment {
34
+ baseEnvironment ??= registerBaseFunctions(new Environment({ unlistedVariablesAreDyn: true }));
35
+ return baseEnvironment;
36
+ }
37
+
38
+ /**
39
+ * A fresh, extensible clone of the shared base CEL environment (trim, slice,
40
+ * random, randomSample). Consumers may register additional functions on it.
41
+ * Note: `exists()` is only available through `evaluateCel`, because it must
42
+ * be bound to the evaluation's variables.
43
+ */
44
+ export function createCelEnvironment(): Environment {
45
+ return getBaseEnvironment().clone();
46
+ }
47
+
48
+ /**
49
+ * Canonical CEL evaluation entry point shared by the backend, frontend,
50
+ * and MCP server. Registers `exists(name)` bound to `variables`, plus any
51
+ * per-call extra functions, then evaluates.
52
+ *
53
+ * If a registered handler is async, cel-js returns a Promise — use
54
+ * `await evaluateCel<Promise<T>>(...)` in that case.
55
+ *
56
+ * `options.functions` must not redeclare a base function (trim, slice,
57
+ * random, randomSample) or `exists` — cel-js throws on overlapping
58
+ * signatures rather than overriding.
59
+ */
60
+ export function evaluateCel<T = unknown>(
61
+ expression: string,
62
+ variables: Record<string, unknown> = {},
63
+ options: EvaluateCelOptions = {},
64
+ ): T {
65
+ const env = createCelEnvironment();
66
+ env.registerFunction(
67
+ 'exists(string): bool',
68
+ (name: string) => name in variables && variables[name] != null,
69
+ {
70
+ description: 'True when the named variable was provided and is not null.',
71
+ params: [{ name: 'name', description: 'Variable name to check' }],
72
+ },
73
+ );
74
+ for (const fn of options.functions ?? []) {
75
+ env.registerFunction(fn.signature, fn.handler as (...args: unknown[]) => unknown, {
76
+ ...(fn.description !== undefined ? { description: fn.description } : {}),
77
+ ...(fn.params !== undefined ? { params: fn.params } : {}),
78
+ });
79
+ }
80
+ return env.evaluate(expression, variables) as T;
81
+ }
@@ -0,0 +1,109 @@
1
+ import type { Environment } from '@marcbachmann/cel-js';
2
+
3
+ import {
4
+ mulberry32,
5
+ normalizeSeed,
6
+ sampleWithoutReplacement,
7
+ sampleWithReplacement,
8
+ type RandomSource,
9
+ } from './prng';
10
+
11
+ /**
12
+ * Random integer with exactly `digits` digits, e.g. random(5) -> 48574.
13
+ * Ported verbatim from the backend's cel_evaluator for back-compat with
14
+ * deployed workflows. Float precision degrades above 15 digits.
15
+ */
16
+ function randomDigits(digits: bigint | number): bigint {
17
+ const d = Number(digits);
18
+ if (d <= 0) return 0n;
19
+ const min = 10 ** (d - 1);
20
+ const max = 10 ** d;
21
+ return BigInt(Math.floor(Math.random() * (max - min)) + min);
22
+ }
23
+
24
+ function randomSampleImpl(
25
+ list: unknown,
26
+ count: bigint | number,
27
+ seed: bigint | number | undefined,
28
+ withReplacement: boolean,
29
+ ): unknown[] {
30
+ if (!Array.isArray(list)) return [];
31
+ const rand: RandomSource = seed === undefined ? Math.random : mulberry32(normalizeSeed(seed));
32
+ const k = Number(count);
33
+ return withReplacement ? sampleWithReplacement(list, k, rand) : sampleWithoutReplacement(list, k, rand);
34
+ }
35
+
36
+ const RANDOM_SAMPLE_DESCRIPTION =
37
+ 'Sample items from a list. An int seed makes the result reproducible (same seed, same sample); ' +
38
+ 'withReplacement allows duplicates. Without replacement, count is clamped to the list size.';
39
+
40
+ const PARAM_LIST = { name: 'list', description: 'List to sample from' };
41
+ const PARAM_COUNT = { name: 'count', description: 'Number of items to sample' };
42
+ const PARAM_SEED = { name: 'seed', description: 'Seed for reproducible sampling' };
43
+ const PARAM_WITH_REPLACEMENT = { name: 'withReplacement', description: 'Allow duplicate picks' };
44
+
45
+ /** Register the shared base functions. Order and semantics are stable API. */
46
+ export function registerBaseFunctions(env: Environment): Environment {
47
+ // Registered as dyn so cel-js doesn't reject null before reaching the handler.
48
+ env.registerFunction('trim(dyn): string', (s: string) => (s == null ? '' : String(s).trim()), {
49
+ description: 'Trim leading and trailing whitespace. Null-safe: null becomes "".',
50
+ params: [{ name: 'value', description: 'Value to trim; null yields ""' }],
51
+ });
52
+
53
+ // Registered as dyn first arg so cel-js doesn't reject non-list inputs before the handler.
54
+ env.registerFunction(
55
+ 'slice(dyn, int, int): list',
56
+ (arr: unknown, start: bigint | number, end: bigint | number) => {
57
+ if (!Array.isArray(arr)) return [];
58
+ return arr.slice(Number(start), Number(end));
59
+ },
60
+ {
61
+ description: 'Return list[start:end] with JS Array.prototype.slice semantics.',
62
+ params: [
63
+ { name: 'list', description: 'List to slice' },
64
+ { name: 'start', description: 'Start index (inclusive)' },
65
+ { name: 'end', description: 'End index (exclusive)' },
66
+ ],
67
+ },
68
+ );
69
+
70
+ env.registerFunction('random(int): int', (digits: bigint | number) => randomDigits(digits), {
71
+ description: 'Random integer with exactly N digits, e.g. random(5) -> 48574. Unseeded.',
72
+ params: [{ name: 'digits', description: 'Number of digits in the result' }],
73
+ });
74
+
75
+ env.registerFunction(
76
+ 'randomSample(list, int): list',
77
+ (list: unknown, count: bigint | number) => randomSampleImpl(list, count, undefined, false),
78
+ { description: RANDOM_SAMPLE_DESCRIPTION, params: [PARAM_LIST, PARAM_COUNT] },
79
+ );
80
+
81
+ env.registerFunction(
82
+ 'randomSample(list, int, int): list',
83
+ (list: unknown, count: bigint | number, seed: bigint | number) =>
84
+ randomSampleImpl(list, count, seed, false),
85
+ { description: RANDOM_SAMPLE_DESCRIPTION, params: [PARAM_LIST, PARAM_COUNT, PARAM_SEED] },
86
+ );
87
+
88
+ env.registerFunction(
89
+ 'randomSample(list, int, bool): list',
90
+ (list: unknown, count: bigint | number, withReplacement: boolean) =>
91
+ randomSampleImpl(list, count, undefined, withReplacement),
92
+ {
93
+ description: RANDOM_SAMPLE_DESCRIPTION,
94
+ params: [PARAM_LIST, PARAM_COUNT, PARAM_WITH_REPLACEMENT],
95
+ },
96
+ );
97
+
98
+ env.registerFunction(
99
+ 'randomSample(list, int, int, bool): list',
100
+ (list: unknown, count: bigint | number, seed: bigint | number, withReplacement: boolean) =>
101
+ randomSampleImpl(list, count, seed, withReplacement),
102
+ {
103
+ description: RANDOM_SAMPLE_DESCRIPTION,
104
+ params: [PARAM_LIST, PARAM_COUNT, PARAM_SEED, PARAM_WITH_REPLACEMENT],
105
+ },
106
+ );
107
+
108
+ return env;
109
+ }
@@ -0,0 +1,8 @@
1
+ export {
2
+ createCelEnvironment,
3
+ evaluateCel,
4
+ type CelFunctionParam,
5
+ type CelFunctionRegistration,
6
+ type EvaluateCelOptions,
7
+ } from './environment';
8
+ export { Environment } from '@marcbachmann/cel-js';
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Deterministic PRNG + sampling primitives backing the CEL `randomSample`
3
+ * function.
4
+ *
5
+ * STABILITY CONTRACT — DO NOT CHANGE THESE ALGORITHMS.
6
+ * The same seed must produce the same sample on every runtime and every SDK
7
+ * version: the backend (server) and frontend (client) rely on agreeing outputs,
8
+ * and customers rely on seeds for reproducible workflow runs. Golden-value
9
+ * tests in tests/lib/cel/prng.test.ts pin the exact outputs.
10
+ */
11
+
12
+ /** A source of random floats in [0, 1). */
13
+ export type RandomSource = () => number;
14
+
15
+ /**
16
+ * mulberry32: fast 32-bit PRNG with exact, platform-independent output.
17
+ * `seed` is coerced to uint32 (via `>>> 0`); use {@link normalizeSeed} to
18
+ * convert arbitrary CEL ints before calling this.
19
+ */
20
+ export function mulberry32(seed: number): RandomSource {
21
+ let a = seed >>> 0;
22
+ return () => {
23
+ a = (a + 0x6d2b79f5) | 0;
24
+ let t = Math.imul(a ^ (a >>> 15), 1 | a);
25
+ t = (t + Math.imul(t ^ (t >>> 7), 61 | t)) ^ t;
26
+ return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
27
+ };
28
+ }
29
+
30
+ /** Normalize a CEL int (bigint or number) to a uint32 PRNG seed. */
31
+ export function normalizeSeed(seed: bigint | number): number {
32
+ return Number(BigInt.asUintN(32, BigInt(seed)));
33
+ }
34
+
35
+ /**
36
+ * Sample `count` distinct elements via partial Fisher–Yates.
37
+ * `count` is clamped to [0, list.length]; the input list is not mutated.
38
+ */
39
+ export function sampleWithoutReplacement<T>(list: readonly T[], count: number, rand: RandomSource): T[] {
40
+ const n = list.length;
41
+ const k = Math.min(Math.max(count, 0), n);
42
+ if (k === 0) return [];
43
+ const pool = list.slice();
44
+ for (let i = 0; i < k; i++) {
45
+ const j = i + Math.floor(rand() * (n - i));
46
+ const tmp = pool[i]!;
47
+ pool[i] = pool[j]!;
48
+ pool[j] = tmp;
49
+ }
50
+ return pool.slice(0, k);
51
+ }
52
+
53
+ /** `count` independent draws; duplicates allowed. Returns [] if the list is empty or count <= 0. */
54
+ export function sampleWithReplacement<T>(list: readonly T[], count: number, rand: RandomSource): T[] {
55
+ const n = list.length;
56
+ if (n === 0 || count <= 0) return [];
57
+ const out: T[] = [];
58
+ for (let i = 0; i < count; i++) {
59
+ out.push(list[Math.floor(rand() * n)]!);
60
+ }
61
+ return out;
62
+ }
@@ -61,7 +61,17 @@ export type WorkflowEditorNode =
61
61
  type: 'ifElse';
62
62
  data: NodeCommonData & { conditionBlocks?: WorkflowEditorConditionBlock[] };
63
63
  }
64
- | { id: string; type: 'approval'; data: NodeCommonData & { message?: string } };
64
+ | { id: string; type: 'approval'; data: NodeCommonData & { message?: string } }
65
+ | {
66
+ id: string;
67
+ type: 'modelInput';
68
+ data: NodeCommonData & {
69
+ inputName: string;
70
+ form?: Record<string, unknown>;
71
+ parentModelNodeId?: string;
72
+ modelId?: string;
73
+ };
74
+ };
65
75
 
66
76
  export type WorkflowEditorEdge = {
67
77
  source: string;
@@ -110,7 +120,14 @@ export type WorkflowEditorModel = {
110
120
  };
111
121
  };
112
122
 
123
+ type ModelInputNodeData = NodeCommonData & {
124
+ inputName: string;
125
+ form?: Record<string, unknown>;
126
+ };
127
+
113
128
  const RUNNABLE_TYPES = new Set(['model', 'llm', 'forEach', 'forEachEnd']);
129
+ const MODEL_CUSTOM_INPUT_HANDLE_SUFFIX = '-source-custom';
130
+
114
131
  export const ASPECT_RATIO_PRESETS = [
115
132
  '21:9',
116
133
  '16:9',
@@ -826,6 +843,13 @@ function getNodeOutputValue(
826
843
  }
827
844
  return (Array.isArray(d.value) ? d.value : d.value) || undefined;
828
845
  }
846
+ if (node.type === 'modelInput') {
847
+ const value = getModelInputNodeStaticValue(node);
848
+ if (value === undefined) return undefined;
849
+ if (typeof value === 'boolean') return value ? 'true' : 'false';
850
+ if (typeof value === 'number') return String(value);
851
+ return value;
852
+ }
829
853
  return undefined;
830
854
  }
831
855
 
@@ -917,6 +941,54 @@ function normalizeNodes(nodes: WorkflowEditorNode[]): WorkflowEditorNode[] {
917
941
  });
918
942
  }
919
943
 
944
+ function getIsModelCustomInputHandleId(handleId: string | null | undefined): boolean {
945
+ return !!handleId && handleId.endsWith(MODEL_CUSTOM_INPUT_HANDLE_SUFFIX);
946
+ }
947
+
948
+ function getModelInputEdgeInputName(
949
+ edge: WorkflowEditorEdge,
950
+ handle: WorkflowEditorHandleInput | undefined,
951
+ nodes: WorkflowEditorNode[],
952
+ ): string | undefined {
953
+ if (handle?.name) return handle.name;
954
+ const targetNode = nodes.find((n) => n.id === edge.target);
955
+ if (targetNode?.type !== 'modelInput') return undefined;
956
+ if (handle?.type === 'custom' || getIsModelCustomInputHandleId(edge.sourceHandle)) {
957
+ return (targetNode.data as ModelInputNodeData).inputName;
958
+ }
959
+ return undefined;
960
+ }
961
+
962
+ function getModelInputNodeStaticValue(node: WorkflowEditorNode): string | number | boolean | undefined {
963
+ if (node.type !== 'modelInput') return undefined;
964
+ const data = node.data as ModelInputNodeData;
965
+ const value = data.form?.[data.inputName];
966
+ if (value === undefined) return undefined;
967
+ if (typeof value === 'boolean' || typeof value === 'number' || typeof value === 'string') return value;
968
+ return undefined;
969
+ }
970
+
971
+ function pushModelFlowInputFromEdge(
972
+ flowInputs: WorkflowEditorFlowInput[],
973
+ existingIndex: number,
974
+ inputName: string,
975
+ inputType: string,
976
+ edge: WorkflowEditorEdge,
977
+ ctx: SourceRefContext,
978
+ filteredNodes: WorkflowEditorNode[],
979
+ ): void {
980
+ const ref = getSourceRef(edge, ctx);
981
+ if (ref) {
982
+ setOrPushFlowInput(flowInputs, existingIndex, { name: inputName, type: inputType, ref });
983
+ return;
984
+ }
985
+ const targetNode = filteredNodes.find((n) => n.id === edge.target);
986
+ if (targetNode?.type === 'modelInput') {
987
+ const staticInput = toStaticInput(inputName, inputType, getModelInputNodeStaticValue(targetNode));
988
+ if (staticInput) setOrPushFlowInput(flowInputs, existingIndex, staticInput);
989
+ }
990
+ }
991
+
920
992
  // ---- Main function ----
921
993
 
922
994
  /**
@@ -991,7 +1063,7 @@ export function convertWorkflowEditorToFlow(
991
1063
 
992
1064
  const nodeIdToFlowIdMap = new Map<string, string>(
993
1065
  sortedNodes
994
- .filter((n) => !inputNodeIds.includes(n.id) && n.type !== 'forEachEnd')
1066
+ .filter((n) => !inputNodeIds.includes(n.id) && n.type !== 'forEachEnd' && n.type !== 'modelInput')
995
1067
  .map((n) => [n.id, nodeIdToFlowId(n.id)]),
996
1068
  );
997
1069
  const nodeIdToInputNameMap = new Map<string, string>(inputNodeIds.map((id) => [id, nodeIdToFlowId(id)]));
@@ -1083,24 +1155,25 @@ export function convertWorkflowEditorToFlow(
1083
1155
  for (const edge of incomingEdges) {
1084
1156
  if (edge.sourceHandle === conditionalHandleId) continue;
1085
1157
  const handle = getInputHandle(edge, node.data.inputHandles);
1086
- if (!handle?.name) continue;
1087
- if (handleTypeIncludes(handle.type, 'aspectRatio')) {
1158
+ const inputName = getModelInputEdgeInputName(edge, handle, nodes);
1159
+ if (!inputName) continue;
1160
+ if (handleTypeIncludes(handle?.type, 'aspectRatio')) {
1088
1161
  aspectRatioEdges.push(edge);
1089
1162
  continue;
1090
1163
  }
1091
- const existing = edgesByInput.get(handle.name);
1164
+ const existing = edgesByInput.get(inputName);
1092
1165
  if (existing) existing.push(edge);
1093
- else edgesByInput.set(handle.name, [edge]);
1166
+ else edgesByInput.set(inputName, [edge]);
1094
1167
  }
1095
1168
 
1096
1169
  if (nodeData.form) {
1097
1170
  for (const [key, value] of Object.entries(nodeData.form)) {
1098
1171
  if (value === undefined || value === '') continue;
1099
- const modelInput = modelInputs?.find((inp) => inp.name === key);
1172
+ const modelFormInput = modelInputs?.find((inp) => inp.name === key);
1100
1173
 
1101
- if (modelInput?.type === 'inputs_array') {
1174
+ if (modelFormInput?.type === 'inputs_array') {
1102
1175
  if (!getIsFormArray(value)) continue;
1103
- const nestedInputs = modelInput.inputs ?? [];
1176
+ const nestedInputs = modelFormInput.inputs ?? [];
1104
1177
  const items: WorkflowEditorFlowInput[][] = [];
1105
1178
 
1106
1179
  for (const [index, form] of (value as Record<string, unknown>[]).entries()) {
@@ -1124,7 +1197,7 @@ export function convertWorkflowEditorToFlow(
1124
1197
  if (items.length > 0) flowInputs.push({ name: key, type: 'inputs_array', items });
1125
1198
  } else {
1126
1199
  const type =
1127
- modelInput?.type ??
1200
+ modelFormInput?.type ??
1128
1201
  (typeof value === 'number' ? 'number'
1129
1202
  : typeof value === 'boolean' ? 'boolean'
1130
1203
  : 'string');
@@ -1158,9 +1231,15 @@ export function convertWorkflowEditorToFlow(
1158
1231
  const inputType = modelInput.type;
1159
1232
 
1160
1233
  if (inputEdges.length === 1) {
1161
- const ref = getSourceRef(inputEdges[0]!, ctx);
1162
- if (!ref) continue;
1163
- setOrPushFlowInput(flowInputs, existingIndex, { name: inputName, type: inputType, ref });
1234
+ pushModelFlowInputFromEdge(
1235
+ flowInputs,
1236
+ existingIndex,
1237
+ inputName,
1238
+ inputType,
1239
+ inputEdges[0]!,
1240
+ ctx,
1241
+ filteredNodes,
1242
+ );
1164
1243
  } else {
1165
1244
  const allConditional = inputEdges.every((e) => getIsConditionallyExecuted(e.target, nodes, edges));
1166
1245
 
@@ -1224,7 +1303,9 @@ export function convertWorkflowEditorToFlow(
1224
1303
 
1225
1304
  if (
1226
1305
  !targetNode?.data.isInput &&
1227
- (targetNode?.type === 'asset' || targetNode?.type === 'text')
1306
+ (targetNode?.type === 'asset' ||
1307
+ targetNode?.type === 'text' ||
1308
+ targetNode?.type === 'modelInput')
1228
1309
  ) {
1229
1310
  transformInputs.push({
1230
1311
  name: targetNodeKey,
@@ -1263,9 +1344,15 @@ export function convertWorkflowEditorToFlow(
1263
1344
  ref: { node: concatItem.id, name: 'all' },
1264
1345
  });
1265
1346
  } else {
1266
- const ref = getSourceRef(inputEdges[0]!, ctx);
1267
- if (!ref) continue;
1268
- setOrPushFlowInput(flowInputs, existingIndex, { name: inputName, type: inputType, ref });
1347
+ pushModelFlowInputFromEdge(
1348
+ flowInputs,
1349
+ existingIndex,
1350
+ inputName,
1351
+ inputType,
1352
+ inputEdges[0]!,
1353
+ ctx,
1354
+ filteredNodes,
1355
+ );
1269
1356
  }
1270
1357
  }
1271
1358
  }
@@ -19,7 +19,8 @@ export type WorkflowEditorNodeType =
19
19
  | 'forEach'
20
20
  | 'forEachEnd'
21
21
  | 'stickyNote'
22
- | 'approval';
22
+ | 'approval'
23
+ | 'modelInput';
23
24
 
24
25
  export const VALID_EDITOR_NODE_TYPES: readonly WorkflowEditorNodeType[] = [
25
26
  'text',
@@ -36,6 +37,7 @@ export const VALID_EDITOR_NODE_TYPES: readonly WorkflowEditorNodeType[] = [
36
37
  'forEachEnd',
37
38
  'stickyNote',
38
39
  'approval',
40
+ 'modelInput',
39
41
  ];
40
42
 
41
43
  export interface WorkflowExportData {