@uipath/maestro-builder-sdk 6.32.1 → 6.32.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.
package/dist/api-index.md CHANGED
@@ -57,7 +57,7 @@ could hand you spans for a version you do not have.
57
57
  | `apiWorkflow` | function | `dist/core/actions.d.ts:1715-1749` | Actions | Invoke a deployed API workflow — a coded workflow published to Orchestrator, run as a serverless job rather than by a… |
58
58
  | `ApiWorkflowInputs` | interface | `dist/core/actions.d.ts:468-499` | Option shapes | 5 field(s) |
59
59
  | `AppRef` | interface | `dist/nodes/hitl/flow/spec.d.ts:140-185` | Supporting types | A deployed Action App that supplies a human task's form — the `'action-app'` variant's subject. |
60
- | `ArmBuilder` | class | `dist/flow-sdk.d.ts:1258-1281` | Builders | The sub-builder an ARM callback receives — a `StepList` that can also name itself with `.label(...)`. |
60
+ | `ArmBuilder` | class | `dist/flow-sdk.d.ts:1267-1290` | Builders | The sub-builder an ARM callback receives — a `StepList` that can also name itself with `.label(...)`. |
61
61
  | `AskedField` | interface | `dist/core/actions.d.ts:126-141` | Supporting types | A value the reviewer FILLS IN: read downstream with `out('<step>', '<id>')`. |
62
62
  | `batchTransform` | function | `dist/nodes/ai-patterns/flow/factories.d.ts:49-83` | Actions | Add AI-generated columns to a CSV — the platform's **Batch transform** node, `uipath.pattern.batch-transform` (service… |
63
63
  | `BatchTransformInputs` | interface | `dist/nodes/ai-patterns/flow/spec.d.ts:48-63` | Option shapes | 4 field(s) |
@@ -130,11 +130,11 @@ could hand you spans for a version you do not have.
130
130
  | `FilterCondition` | type | `dist/nodes/transform/flow/spec.d.ts:10-11` | Supporting types | Comparison a filter rule applies to a field. |
131
131
  | `FilterMatch` | type | `dist/nodes/transform/flow/spec.d.ts:8-9` | Supporting types | How a filter combines its rules: every rule must match, or any one. |
132
132
  | `FilterRule` | interface | `dist/nodes/transform/flow/spec.d.ts:12-24` | Supporting types | 3 field(s) |
133
- | `flow` | function | `dist/flow-sdk.d.ts:1646-1661` | Flow construction | Start building a flow with the given id. |
133
+ | `flow` | function | `dist/flow-sdk.d.ts:1655-1670` | Flow construction | Start building a flow with the given id. |
134
134
  | `FlowAction` | class | `dist/core/node-classes.d.ts:162-168` | Supporting types | A node placed as a step — pass an instance to `.step(name, …)`. |
135
135
  | `FlowActionSpec` | type | `dist/flow-sdk.d.ts:53-54` | Supporting types | What `.step()` accepts here: the shared actions plus this SDK's subflow. |
136
136
  | `FlowActionSpecs` | interface | `dist/core/actions.d.ts:1500-1577` | Supporting types | Every action kind, keyed by kind, to the body of its spec — the arm's fields other than `kind`. |
137
- | `FlowBuilder` | class | `dist/flow-sdk.d.ts:1282-1645` | Builders | 15 member(s) |
137
+ | `FlowBuilder` | class | `dist/flow-sdk.d.ts:1291-1654` | Builders | 15 member(s) |
138
138
  | `FlowLayout` | interface | `dist/flow-sdk.d.ts:717-730` | Supporting types | Designer layout for a flow, keyed by AUTHOR-level ids: node entries by step name (plus the trigger id and `end`), edge… |
139
139
  | `FlowNode` | class | `dist/core/node-classes.d.ts:126-161` | Supporting types | The abstract root of every definition-backed node the builder can place. |
140
140
  | `FlowResource` | class | `dist/core/node-classes.d.ts:176-183` | Supporting types | A node attached to another semantic node — an inline agent's tool, context, memory, or escalation. |
@@ -228,11 +228,11 @@ could hand you spans for a version you do not have.
228
228
  | `SendMessageInputs` | interface | `dist/nodes/conversation/flow/spec.d.ts:8-27` | Option shapes | 4 field(s) |
229
229
  | `ShownField` | interface | `dist/core/actions.d.ts:105-125` | Supporting types | A value the reviewer READS: shown on the form, filled in from the flow. |
230
230
  | `Step` | type | `dist/flow-sdk.d.ts:520-639` | Supporting types | |
231
- | `StepList` | class | `dist/flow-sdk.d.ts:792-1257` | Builders | Collects a sequence of steps. |
231
+ | `StepList` | class | `dist/flow-sdk.d.ts:792-1266` | Builders | Collects a sequence of steps. |
232
232
  | `STICKY_NOTE_COLORS` | const | `dist/flow-sdk.d.ts:670-675` | Flow construction | The designer's sticky-note palette. |
233
233
  | `StickyNote` | interface | `dist/flow-sdk.d.ts:682-716` | Supporting types | A canvas sticky note — free text pinned to the diagram, for the humans reading it. |
234
234
  | `StickyNoteColor` | type | `dist/flow-sdk.d.ts:676-681` | Supporting types | A sticky note's swatch. |
235
- | `subflow` | function | `dist/flow-sdk.d.ts:1662-1701` | Flow construction | Run another flow as one step, and read back what it returns. |
235
+ | `subflow` | function | `dist/flow-sdk.d.ts:1671-1710` | Flow construction | Run another flow as one step, and read back what it returns. |
236
236
  | `SubflowSpec` | interface | `dist/flow-sdk.d.ts:45-52` | Supporting types | A step that runs a child flow. |
237
237
  | `summarize` | function | `dist/nodes/ai-patterns/flow/factories.d.ts:8-48` | Actions | Summarize a document with citations — the platform's **Summarize** node. |
238
238
  | `SummarizeInputs` | interface | `dist/nodes/ai-patterns/flow/spec.d.ts:8-40` | Option shapes | 3 field(s) |
@@ -66,7 +66,7 @@ not find it either.
66
66
  | `app` | property | `HumanTaskOpts` | `dist/bpmn/bpmn-sdk.d.ts:1337-1338` |
67
67
  | `appSystemName` | property | `AppRef` | `dist/nodes/hitl/flow/spec.d.ts:170-175` |
68
68
  | `appVersion` | property | `HumanTaskOpts` | `dist/bpmn/bpmn-sdk.d.ts:1339-1340` |
69
- | `armLabel` | property | `ArmBuilder` | `dist/flow-sdk.d.ts:1270` |
69
+ | `armLabel` | property | `ArmBuilder` | `dist/flow-sdk.d.ts:1279` |
70
70
  | `assignee` | property | `HitlRecipient` | `dist/nodes/hitl/flow/spec.d.ts:52-63` |
71
71
  | `async` | property | `OrchestratorAsyncOpts` | `dist/bpmn/bpmn-sdk.d.ts:1281-1285` |
72
72
  | `atRiskPercentage` | property | `EscalationOpts` | `dist/case/case-sdk.d.ts:132-137` |
@@ -104,7 +104,7 @@ not find it either.
104
104
  | `breakEnabled` | property | `LoopOptions` | `dist/flow-sdk.d.ts:504-508` |
105
105
  | `build` | method | `BpmnBuilder` | `dist/bpmn/bpmn-sdk.d.ts:3483-3488` |
106
106
  | `build` | method | `CaseBuilder` | `dist/case/case-sdk.d.ts:1269-1274` |
107
- | `build` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1638-1644` |
107
+ | `build` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1647-1653` |
108
108
  | `businessRule` | method | `ScopeBuilder` | `dist/bpmn/bpmn-sdk.d.ts:2527-2573` |
109
109
  | `by` | property | `LookupResolution` | `dist/core/lookups.d.ts:164` |
110
110
  | `by` | property | `LookupSpec` | `dist/core/lookups.d.ts:27-28` |
@@ -208,7 +208,7 @@ not find it either.
208
208
  | `deferDate` | property | `QueueItemInputs` | `dist/nodes/queue/flow/spec.d.ts:48-49` |
209
209
  | `definition` | property | `NodeContribution` | `dist/core/node-classes.d.ts:111-112` |
210
210
  | `definitions` | property | `BuiltFlow` | `dist/flow-sdk.d.ts:770-775` |
211
- | `definitions` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1499-1539` |
211
+ | `definitions` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1508-1548` |
212
212
  | `delay` | property | `FlowActionSpecs` | `dist/nodes/delay/flow/spec.d.ts:38-41` |
213
213
  | `dependsOn` | property | `LookupSpec` | `dist/core/lookups.d.ts:34-35` |
214
214
  | `description` | property | `AgentMemoryRef` | `dist/core/actions.d.ts:1244` |
@@ -225,7 +225,7 @@ not find it either.
225
225
  | `description` | property | `CustomGuardrail` | `dist/core/actions.d.ts:812` |
226
226
  | `description` | property | `EscalationRef` | `dist/core/actions.d.ts:1406-1407` |
227
227
  | `description` | property | `EventTriggerOpts` | `dist/case/case-sdk.d.ts:241` |
228
- | `description` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1308-1315` |
228
+ | `description` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1317-1324` |
229
229
  | `description` | property | `HttpRequestToolRef` | `dist/core/actions.d.ts:1211` |
230
230
  | `description` | property | `IxpExtractInputs` | `dist/core/actions.d.ts:394-401` |
231
231
  | `description` | property | `IxpToolRef` | `dist/core/actions.d.ts:1384-1385` |
@@ -291,7 +291,7 @@ not find it either.
291
291
  | `entity` | property | `DataServiceOpts` | `dist/bpmn/bpmn-sdk.d.ts:1090-1091` |
292
292
  | `entry` | property | `BuiltStage` | `dist/case/case-sdk.d.ts:528` |
293
293
  | `entry` | property | `BuiltTask` | `dist/case/case-sdk.d.ts:520` |
294
- | `entryPoint` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1374-1424` |
294
+ | `entryPoint` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1383-1433` |
295
295
  | `entryPointId` | property | `ProcessMetadata` | `dist/bpmn/bpmn-sdk.d.ts:534-539` |
296
296
  | `entryPoints` | property | `BuiltFlow` | `dist/flow-sdk.d.ts:776-777` |
297
297
  | `entryWhen` | method | `StageBuilder` | `dist/case/case-sdk.d.ts:1004-1011` |
@@ -462,7 +462,7 @@ not find it either.
462
462
  | `inclusiveGateway` | method | `ScopeBuilder` | `dist/bpmn/bpmn-sdk.d.ts:2266-2273` |
463
463
  | `inlineAgent` | property | `FlowActionSpecs` | `dist/core/actions.d.ts:1548-1551` |
464
464
  | `input` | method | `CaseBuilder` | `dist/case/case-sdk.d.ts:1160-1185` |
465
- | `input` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1579-1591` |
465
+ | `input` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1588-1600` |
466
466
  | `input` | property | `HumanTaskOpts` | `dist/bpmn/bpmn-sdk.d.ts:1355-1356` |
467
467
  | `input` | property | `OrchestratorOpts` | `dist/bpmn/bpmn-sdk.d.ts:1241-1242` |
468
468
  | `input` | method | `ScopeBuilder` | `dist/bpmn/bpmn-sdk.d.ts:3068-3076` |
@@ -535,7 +535,7 @@ not find it either.
535
535
  | `kind` | property | `SubflowSpec` | `dist/flow-sdk.d.ts:47` |
536
536
  | `kind` | property | `WhenExpression` | `dist/case/case-sdk.d.ts:99-100` |
537
537
  | `kValue` | property | `AgentMemoryRef` | `dist/core/actions.d.ts:1251-1252` |
538
- | `label` | method | `ArmBuilder` | `dist/flow-sdk.d.ts:1271-1280` |
538
+ | `label` | method | `ArmBuilder` | `dist/flow-sdk.d.ts:1280-1289` |
539
539
  | `label` | property | `AskedField` | `dist/core/actions.d.ts:130-131` |
540
540
  | `label` | property | `BuiltStage` | `dist/case/case-sdk.d.ts:523` |
541
541
  | `label` | property | `FormFieldOption` | `dist/core/actions.d.ts:102-103` |
@@ -550,7 +550,7 @@ not find it either.
550
550
  | `layout` | property | `BuiltCase` | `dist/case/case-sdk.d.ts:646-647` |
551
551
  | `layout` | property | `BuiltFlow` | `dist/flow-sdk.d.ts:766-767` |
552
552
  | `layout` | method | `CaseBuilder` | `dist/case/case-sdk.d.ts:1139-1159` |
553
- | `layout` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1316-1326` |
553
+ | `layout` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1325-1335` |
554
554
  | `legacyCompleted` | property | `HitlInputs` | `dist/nodes/hitl/flow/spec.d.ts:252-284` |
555
555
  | `limit` | property | `DataFabricReadInputs` | `dist/nodes/data-fabric/flow/spec.d.ts:95-100` |
556
556
  | `limit` | property | `DoWhileOptions` | `dist/flow-sdk.d.ts:515-516` |
@@ -650,7 +650,7 @@ not find it either.
650
650
  | `name` | property | `EventSubProcessOpts` | `dist/bpmn/bpmn-sdk.d.ts:1840-1841` |
651
651
  | `name` | property | `EventTriggerOpts` | `dist/case/case-sdk.d.ts:240` |
652
652
  | `name` | property | `ExternalTaskOpts` | `dist/bpmn/bpmn-sdk.d.ts:1499-1500` |
653
- | `name` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1300-1307` |
653
+ | `name` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1309-1316` |
654
654
  | `name` | property | `FlowOpts` | `dist/bpmn/bpmn-sdk.d.ts:1637-1638` |
655
655
  | `name` | property | `GatewayOpts` | `dist/bpmn/bpmn-sdk.d.ts:760-761` |
656
656
  | `name` | property | `HandlerOpts` | `dist/bpmn/bpmn-sdk.d.ts:1735-1736` |
@@ -718,7 +718,7 @@ not find it either.
718
718
  | `onTimer` | method | `ActivityBuilder` | `dist/bpmn/bpmn-sdk.d.ts:3284-3292` |
719
719
  | `onTimer` | method | `ActivityBuilder` | `dist/bpmn/bpmn-sdk.d.ts:3293-3301` |
720
720
  | `openTails` | property | `BuiltFlow` | `dist/flow-sdk.d.ts:785-790` |
721
- | `openTails` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1540-1578` |
721
+ | `openTails` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1549-1587` |
722
722
  | `operation` | property | `Aggregation` | `dist/nodes/transform/flow/spec.d.ts:37` |
723
723
  | `operation` | property | `ConnectorToolRef` | `dist/core/actions.d.ts:1287-1288` |
724
724
  | `operation` | property | `WaitConnectorPlaceholderSpec` | `dist/case/case-sdk.d.ts:368-369` |
@@ -735,7 +735,7 @@ not find it either.
735
735
  | `outcomes` | property | `EscalationRef` | `dist/core/actions.d.ts:1452-1457` |
736
736
  | `outcomes` | property | `HitlInputs` | `dist/nodes/hitl/flow/spec.d.ts:211-225` |
737
737
  | `output` | method | `CaseBuilder` | `dist/case/case-sdk.d.ts:1186-1198` |
738
- | `output` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1592-1627` |
738
+ | `output` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1601-1636` |
739
739
  | `output` | property | `RegistryTypeSpec` | `dist/bpmn/typed-node.d.ts:90` |
740
740
  | `output` | method | `ScopeBuilder` | `dist/bpmn/bpmn-sdk.d.ts:3077-3085` |
741
741
  | `outputColumns` | property | `BatchTransformInputs` | `dist/nodes/ai-patterns/flow/spec.d.ts:56-60` |
@@ -870,7 +870,7 @@ not find it either.
870
870
  | `retry` | property | `ActivityOpts` | `dist/bpmn/bpmn-sdk.d.ts:830-831` |
871
871
  | `retryable` | property | `ErrorMappingRow` | `dist/bpmn/bpmn-sdk.d.ts:308-309` |
872
872
  | `retryCount` | property | `HttpInputsBase` | `dist/nodes/http/flow/spec.d.ts:109-123` |
873
- | `return` | method | `StepList` | `dist/flow-sdk.d.ts:1247-1256` |
873
+ | `return` | method | `StepList` | `dist/flow-sdk.d.ts:1256-1265` |
874
874
  | `returnCitations` | property | `SummarizeInputs` | `dist/nodes/ai-patterns/flow/spec.d.ts:34-39` |
875
875
  | `returns` | property | `AgentInputs` | `dist/core/actions.d.ts:698-717` |
876
876
  | `returns` | property | `ApiWorkflowInputs` | `dist/core/actions.d.ts:486-498` |
@@ -911,7 +911,7 @@ not find it either.
911
911
  | `schemaVersion` | method | `BpmnBuilder` | `dist/bpmn/bpmn-sdk.d.ts:3375-3404` |
912
912
  | `schemaVersion` | property | `BuiltFlow` | `dist/flow-sdk.d.ts:750-756` |
913
913
  | `schemaVersion` | method | `CaseBuilder` | `dist/case/case-sdk.d.ts:1068-1094` |
914
- | `schemaVersion` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1459-1498` |
914
+ | `schemaVersion` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1468-1507` |
915
915
  | `scope` | property | `EscalationRecipient` | `dist/case/case-sdk.d.ts:121` |
916
916
  | `scopes` | property | `GuardrailSelector` | `dist/core/actions.d.ts:758` |
917
917
  | `script` | property | `FlowActionSpecs` | `dist/nodes/script/flow/spec.d.ts:47-50` |
@@ -989,10 +989,10 @@ not find it either.
989
989
  | `steps` | property | `StepList` | `dist/flow-sdk.d.ts:794` |
990
990
  | `stepSwitch` | method | `StepList` | `dist/flow-sdk.d.ts:837-879` |
991
991
  | `stepToList` | method | `StepList` | `dist/flow-sdk.d.ts:954-982` |
992
- | `stepToRef` | method | `StepList` | `dist/flow-sdk.d.ts:1182-1225` |
993
- | `stepToRef` | method | `StepList` | `dist/flow-sdk.d.ts:1226-1246` |
992
+ | `stepToRef` | method | `StepList` | `dist/flow-sdk.d.ts:1190-1234` |
993
+ | `stepToRef` | method | `StepList` | `dist/flow-sdk.d.ts:1235-1255` |
994
994
  | `stickyNotes` | property | `BuiltFlow` | `dist/flow-sdk.d.ts:768-769` |
995
- | `stickyNotes` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1327-1352` |
995
+ | `stickyNotes` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1336-1361` |
996
996
  | `storageBucket` | property | `DocValidationInputs` | `dist/nodes/hitl/flow/spec.d.ts:82-83` |
997
997
  | `strategy` | property | `LookupSpec` | `dist/core/lookups.d.ts:33` |
998
998
  | `style` | property | `CaseNodeLayout` | `dist/case/case-sdk.d.ts:597-598` |
@@ -1030,7 +1030,7 @@ not find it either.
1030
1030
  | `temperature` | property | `InlineAgentInputs` | `dist/core/actions.d.ts:981-982` |
1031
1031
  | `temperature` | property | `VoiceSettings` | `dist/core/actions.d.ts:270-271` |
1032
1032
  | `terminate` | property | `EndOpts` | `dist/bpmn/bpmn-sdk.d.ts:692-693` |
1033
- | `terminate` | method | `StepList` | `dist/flow-sdk.d.ts:1151-1181` |
1033
+ | `terminate` | method | `StepList` | `dist/flow-sdk.d.ts:1151-1189` |
1034
1034
  | `threshold` | property | `ContextIndexRef` | `dist/core/actions.d.ts:1495-1496` |
1035
1035
  | `timeCycle` | property | `BuiltTrigger` | `dist/case/case-sdk.d.ts:201-202` |
1036
1036
  | `timeout` | property | `HttpInputsBase` | `dist/nodes/http/flow/spec.d.ts:91-108` |
@@ -1054,11 +1054,11 @@ not find it either.
1054
1054
  | `trigger` | property | `BuiltFlow` | `dist/flow-sdk.d.ts:761-763` |
1055
1055
  | `trigger` | method | `CaseBuilder` | `dist/case/case-sdk.d.ts:1224-1232` |
1056
1056
  | `trigger` | property | `EscalationOpts` | `dist/case/case-sdk.d.ts:128-129` |
1057
- | `trigger` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1353-1373` |
1057
+ | `trigger` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1362-1382` |
1058
1058
  | `trigger` | property | `StartOpts` | `dist/bpmn/bpmn-sdk.d.ts:624-671` |
1059
1059
  | `triggeredByEvent` | property | `SubProcessOpts` | `dist/bpmn/bpmn-sdk.d.ts:976-977` |
1060
1060
  | `triggerId` | property | `BuiltFlow` | `dist/flow-sdk.d.ts:778-784` |
1061
- | `triggerId` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1425-1444` |
1061
+ | `triggerId` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1434-1453` |
1062
1062
  | `triggerOptions` | property | `BuiltFlow` | `dist/flow-sdk.d.ts:764-765` |
1063
1063
  | `triggers` | property | `BuiltCase` | `dist/case/case-sdk.d.ts:644-645` |
1064
1064
  | `triggers` | property | `CaseLayout` | `dist/case/case-sdk.d.ts:620-621` |
@@ -1115,7 +1115,7 @@ not find it either.
1115
1115
  | `value` | property | `TypedInputRow` | `dist/bpmn/typed-node.d.ts:205-206` |
1116
1116
  | `values` | property | `DataFabricCreateInputs` | `dist/nodes/data-fabric/flow/spec.d.ts:132-137` |
1117
1117
  | `var` | method | `CaseBuilder` | `dist/case/case-sdk.d.ts:1199-1223` |
1118
- | `var` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1628-1637` |
1118
+ | `var` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1637-1646` |
1119
1119
  | `var` | method | `ScopeBuilder` | `dist/bpmn/bpmn-sdk.d.ts:3059-3067` |
1120
1120
  | `var` | property | `TaskOutputBinding` | `dist/case/case-sdk.d.ts:494-495` |
1121
1121
  | `var` | property | `TypedOutputRow` | `dist/bpmn/typed-node.d.ts:251-252` |
@@ -1138,7 +1138,7 @@ not find it either.
1138
1138
  | `version` | property | `ConnectorToolRef` | `dist/core/actions.d.ts:1289-1290` |
1139
1139
  | `version` | property | `EventSubscription` | `dist/core/actions.d.ts:2173` |
1140
1140
  | `version` | property | `ExternalTaskOpts` | `dist/bpmn/bpmn-sdk.d.ts:1507-1508` |
1141
- | `version` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1445-1458` |
1141
+ | `version` | method | `FlowBuilder` | `dist/flow-sdk.d.ts:1454-1467` |
1142
1142
  | `version` | property | `NodeOptions` | `dist/flow-sdk.d.ts:397-404` |
1143
1143
  | `version` | property | `TriggerMeta` | `dist/core/connectors.d.ts:126` |
1144
1144
  | `version` | property | `TriggerOptions` | `dist/core/actions.d.ts:2130-2131` |
package/dist/check.js CHANGED
@@ -26,6 +26,7 @@ import { compareSchemaVersions, schemaVersionRefusal } from './schema-version.js
26
26
  import { planFlowGlobals, planSharedInputs, sharedInputRoots } from './flow-variables.js';
27
27
  import { planOutputBacking } from './flow-output-backing.js';
28
28
  import { ownEntry } from './core/own-entry.js';
29
+ import { terminateStepClashMessage, terminateTwiceMessage } from './flow-terminate-names.js';
29
30
  import { endContentKey } from './flow-end-content.js';
30
31
  import { FLOW_NODE_TYPES } from './flow-node-registry.js';
31
32
  import { stepExits } from './flow-step-exits.js';
@@ -271,8 +272,24 @@ function checkFlow(built, ancestors, opts = {}) {
271
272
  // referenceable — registering it would report DUP_STEP the second time one
272
273
  // appears. The port-edge kinds carry no name at all.
273
274
  if ('name' in s && s.kind !== 'return') {
274
- if (stepNames.has(s.name))
275
- diags.push({ level: 'error', code: 'DUP_STEP', message: `Duplicate step name "${s.name}".`, step: s.name });
275
+ if (stepNames.has(s.name)) {
276
+ // Two `.terminate('<name>')` calls are two Terminate nodes: the second
277
+ // would be renamed `<name>2`, so paths that all stop at ONE Terminate
278
+ // come back with an extra node (#1239). Same code as any step clash (a
279
+ // Terminate's name is a step name), with the remedy spelled out.
280
+ // A step and a Terminate sharing a name (either order) get the same
281
+ // words serialize throws for them: rename one.
282
+ const twoTerminates = s.kind === 'terminate' && terminateNames.has(s.name);
283
+ const oneTerminate = (s.kind === 'terminate') !== terminateNames.has(s.name);
284
+ diags.push({
285
+ level: 'error', code: 'DUP_STEP', step: s.name,
286
+ message: twoTerminates
287
+ ? terminateTwiceMessage(s.name)
288
+ : oneTerminate
289
+ ? terminateStepClashMessage(s.name)
290
+ : `Duplicate step name "${s.name}".`,
291
+ });
292
+ }
276
293
  stepNames.add(s.name);
277
294
  declared.add(s.name); // a step's output is referenceable by name
278
295
  }
@@ -4576,6 +4593,12 @@ function checkStepRefs(built, diags) {
4576
4593
  */
4577
4594
  const endContents = new Map();
4578
4595
  const stepNamesSeen = new Set();
4596
+ /**
4597
+ * Every `.terminate('<name>')`. A Terminate is a step-named node (two with one
4598
+ * name are DUP_STEP), and, like an End, it runs nothing after itself, so it is
4599
+ * a ref target from any path, another port's path included (#1239).
4600
+ */
4601
+ const terminateNames = new Set();
4579
4602
  let seq = 0;
4580
4603
  const index = (steps, portList, scope, arm) => {
4581
4604
  for (const s of steps) {
@@ -4593,6 +4616,8 @@ function checkStepRefs(built, diags) {
4593
4616
  }
4594
4617
  else
4595
4618
  stepNamesSeen.add(name);
4619
+ if (s.kind === 'terminate')
4620
+ terminateNames.add(name);
4596
4621
  // Exactly the step rule from before, for steps. A named End only fills a
4597
4622
  // name nothing has claimed; a clash is REF_AMBIGUOUS_TARGET below.
4598
4623
  if (s.kind !== 'return' || !order.has(name)) {
@@ -4697,8 +4722,8 @@ function checkStepRefs(built, diags) {
4697
4722
  if (!order.has(target)) {
4698
4723
  const near = [...order.keys()].find((n) => n.toLowerCase() === target.toLowerCase());
4699
4724
  say('error', 'REF_UNKNOWN_TARGET', `.stepToRef('${target}') ${where} names a step this flow does not have`
4700
- + `${near ? ` (did you mean "${near}"?)` : ''}. It takes the same name you passed to .step(), or the `
4701
- + `\`name\` of a \`.return({}, { name })\` End.`, near ? `.stepToRef('${near}')` : undefined);
4725
+ + `${near ? ` (did you mean "${near}"?)` : ''}. It takes the same name you passed to .step() or `
4726
+ + `.terminate(), or the \`name\` of a \`.return({}, { name })\` End.`, near ? `.stepToRef('${near}')` : undefined);
4702
4727
  continue;
4703
4728
  }
4704
4729
  const ends = endNames.get(target) ?? 0;
@@ -4717,8 +4742,11 @@ function checkStepRefs(built, diags) {
4717
4742
  * So a ref into an End that sits inside another port's path (two HTTP
4718
4743
  * branches, two outcomes, a prefix and a branch, all ending at one End) is
4719
4744
  * the product's own shape, one End with several incoming edges (#1231).
4745
+ * A Terminate is the same: it stops the run whichever path arrives, so two
4746
+ * side paths stopping at one Terminate is one node with two incoming edges
4747
+ * (#1239). A step sharing a Terminate's name is DUP_STEP, reported apart.
4720
4748
  */
4721
- const endOnly = ends > 0;
4749
+ const terminal = ends > 0 || terminateNames.has(target);
4722
4750
  // A ref to a container the path is INSIDE names it as a step, so the edge
4723
4751
  // enters it from its outer input: it starts the loop over from its first
4724
4752
  // item, while the iteration the path was in never finishes. What the author
@@ -4729,10 +4757,11 @@ function checkStepRefs(built, diags) {
4729
4757
  + `next iteration, or .break() to leave the loop.`, '.continue()');
4730
4758
  continue;
4731
4759
  }
4732
- if (inPortList.has(target) && !endOnly) {
4760
+ if (inPortList.has(target) && !terminal) {
4733
4761
  say('error', 'REF_INTO_PORT_LIST', `.stepToRef('${target}') ${where} targets a step inside another port's path. That path runs only when ITS `
4734
4762
  + `port fired — it is not somewhere another edge can jump into. Point at a step on the main path, or end `
4735
- + `this one with .return() / .terminate(). (A named End is the exception: any path may end there.)`);
4763
+ + `this one with .return() / .terminate(). (A named End or a Terminate is the exception: any path may end `
4764
+ + `there.)`);
4736
4765
  continue;
4737
4766
  }
4738
4767
  const targetScope = scopeOf.get(target) ?? '';
@@ -4760,7 +4789,10 @@ function checkStepRefs(built, diags) {
4760
4789
  // Best effort from here: the mechanism is understood, the runtime's behaviour
4761
4790
  // is not measured, so these WARN and leave the verdict to `validate`.
4762
4791
  const targetArm = armOf.get(target);
4763
- if (targetArm !== arm) {
4792
+ // A Terminate stops the whole run, every branch with it, so no Merge is left
4793
+ // waiting: a ref into or out of an arm that ends at one cannot hang a join
4794
+ // (#1239). An End stops only its own path, so it keeps the warnings.
4795
+ if (targetArm !== arm && !terminateNames.has(target)) {
4764
4796
  if (targetArm !== undefined) {
4765
4797
  say('warning', 'REF_INTO_PARALLEL_ARM', `.stepToRef('${target}') ${where} points INTO a parallel arm from outside it. The Merge those arms join `
4766
4798
  + `on is a bpmn:ParallelGateway, which waits for every branch it forked — an extra token arriving inside `
package/dist/decompile.js CHANGED
@@ -2405,9 +2405,12 @@ function region(cursor, stop, scope, ipdom, ctx, refInto) {
2405
2405
  // (`<id>2`); a ref names the one End. `decompile()` seeded `ctx.refTargets`
2406
2406
  // with every End more than one edge enters, so the `.return(...)` emitted
2407
2407
  // first already carries the End's `name` (only a named End is a ref target).
2408
- // Terminates are still excluded: each path emitting its own is a valid flow.
2409
- if (ctx.emitted.has(cursor) && node.type !== T.terminate
2410
- && (node.type !== T.end || ctx.refTargets?.has(cursor))) {
2408
+ //
2409
+ // And a Terminate another path already stopped at (#1239). A Terminate is
2410
+ // always named (its id is its `.terminate('<name>')`), so it needs no
2411
+ // seeding: a second `.terminate(...)` there compiled to a second Terminate
2412
+ // (`<id>2`), or failed check as DUP_STEP; a ref names the one Terminate.
2413
+ if (ctx.emitted.has(cursor) && (node.type !== T.end || ctx.refTargets?.has(cursor))) {
2411
2414
  segs.push(`.stepToRef(${tsLiteral(cursor)})`);
2412
2415
  return segs;
2413
2416
  }
@@ -1163,6 +1163,14 @@ declare class StepList {
1163
1163
  * What aborts, what the run reports, and what each local rung can prove:
1164
1164
  * `references/terminate.md`.
1165
1165
  *
1166
+ * The name is a step name, so a Terminate is also a {@link StepList.stepToRef}
1167
+ * target: another path can stop at this Terminate rather than at one of its
1168
+ * own, from anywhere in the flow, including another port's path. To stop
1169
+ * several paths at one Terminate, spell its `.terminate` once and end the
1170
+ * other paths with `.stepToRef('<name>')`. Two `.terminate`s asking for the
1171
+ * same name are refused (`check`: DUP_STEP; `compile --no-check` throws)
1172
+ * rather than renamed `<name>2`.
1173
+ *
1166
1174
  * @example
1167
1175
  * **Abort the sibling arm from inside a parallel**
1168
1176
  * ```ts
@@ -1208,7 +1216,8 @@ declare class StepList {
1208
1216
  * incoming edges, as the canvas draws it. Unlike a step, an End inside another
1209
1217
  * port's path is a valid target: two HTTP branches or two outcomes can end at
1210
1218
  * one End. To end several paths at one End, spell its `.return` once and end
1211
- * the other paths with `.stepToRef('<name>')`.
1219
+ * the other paths with `.stepToRef('<name>')`. A `.terminate('<name>')` is a
1220
+ * target in the same way: any path may stop at it.
1212
1221
  *
1213
1222
  * ```ts
1214
1223
  * .step('fetch', http({ …, branches: [{ name: 'missing', condition: … }] }))
@@ -1217,8 +1226,8 @@ declare class StepList {
1217
1226
  * .return({}, { name: 'done' }) // both paths end at this one End
1218
1227
  * ```
1219
1228
  *
1220
- * @param target - The step to continue at, named as it was in `.step(...)`, or
1221
- * the `name` of a `.return(...)` End.
1229
+ * @param target - The step to continue at, named as it was in `.step(...)` or
1230
+ * `.terminate(...)`, or the `name` of a `.return(...)` End.
1222
1231
  * @returns This builder. Nothing may follow: the path has been handed off.
1223
1232
  * @see stepToList
1224
1233
  */
@@ -1238,8 +1247,8 @@ declare class StepList {
1238
1247
  * ```
1239
1248
  *
1240
1249
  * @param port - The port of this step to leave, e.g. `'error'`.
1241
- * @param target - The step to continue at, named as it was in `.step(...)`, or
1242
- * the `name` of a `.return(...)` End.
1250
+ * @param target - The step to continue at, named as it was in `.step(...)` or
1251
+ * `.terminate(...)`, or the `name` of a `.return(...)` End.
1243
1252
  * @returns This builder, so calls chain — a side exit ends nothing.
1244
1253
  * @see stepToList
1245
1254
  */
package/dist/flow-sdk.js CHANGED
@@ -816,6 +816,14 @@ class StepList {
816
816
  * What aborts, what the run reports, and what each local rung can prove:
817
817
  * `references/terminate.md`.
818
818
  *
819
+ * The name is a step name, so a Terminate is also a {@link StepList.stepToRef}
820
+ * target: another path can stop at this Terminate rather than at one of its
821
+ * own, from anywhere in the flow, including another port's path. To stop
822
+ * several paths at one Terminate, spell its `.terminate` once and end the
823
+ * other paths with `.stepToRef('<name>')`. Two `.terminate`s asking for the
824
+ * same name are refused (`check`: DUP_STEP; `compile --no-check` throws)
825
+ * rather than renamed `<name>2`.
826
+ *
819
827
  * @example
820
828
  * **Abort the sibling arm from inside a parallel**
821
829
  * ```ts
@@ -0,0 +1,9 @@
1
+ /**
2
+ * The words for a `.terminate('<name>')` whose name is already taken (#1239).
3
+ * `check` (DUP_STEP) and `serialize` (the `--no-check` backstop) both use them,
4
+ * so one clash gets one explanation whichever reports it.
5
+ */
6
+ /** Two `.terminate('<name>')` calls: keep one and end the other paths at it. */
7
+ export declare function terminateTwiceMessage(name: string): string;
8
+ /** A step and a `.terminate('<name>')` share a name: they are different nodes, so rename one. */
9
+ export declare function terminateStepClashMessage(name: string): string;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * The words for a `.terminate('<name>')` whose name is already taken (#1239).
3
+ * `check` (DUP_STEP) and `serialize` (the `--no-check` backstop) both use them,
4
+ * so one clash gets one explanation whichever reports it.
5
+ */
6
+ /** Two `.terminate('<name>')` calls: keep one and end the other paths at it. */
7
+ export function terminateTwiceMessage(name) {
8
+ return `Duplicate step name "${name}": two \`.terminate('${name}')\` calls ask for the same Terminate. Each `
9
+ + `\`.terminate\` makes a Terminate node of its own. To stop several paths at one Terminate, keep one `
10
+ + `\`.terminate('${name}')\` and end the other paths with \`.stepToRef('${name}')\`; to have separate `
11
+ + `Terminates, give each its own name.`;
12
+ }
13
+ /** A step and a `.terminate('<name>')` share a name: they are different nodes, so rename one. */
14
+ export function terminateStepClashMessage(name) {
15
+ return `Duplicate step name "${name}": a step and a \`.terminate('${name}')\` both use it, and a node id names `
16
+ + `one node. Rename one of them.`;
17
+ }
package/dist/serialize.js CHANGED
@@ -66,6 +66,7 @@ import { types } from './core/expr.js';
66
66
  import { SUBFLOW_START_LABEL } from './core/subflow-start.js';
67
67
  import { ownEntry } from './core/own-entry.js';
68
68
  import { endContentKey } from './flow-end-content.js';
69
+ import { terminateStepClashMessage, terminateTwiceMessage } from './flow-terminate-names.js';
69
70
  import { jsonClone } from './core/json-clone.js';
70
71
  // core-definitions.json is an object keyed by "<nodeType>@<version>".
71
72
  const DEFS = BUNDLED_DEFINITIONS;
@@ -4368,6 +4369,8 @@ export function serialize(built, opts = {}) {
4368
4369
  const takenIds = new Set([built.triggerId ?? 'start']);
4369
4370
  /** Per scope, each named `.return` End emitted so far and its content. */
4370
4371
  const namedEnds = new Map();
4372
+ /** Per scope, the names a `.terminate` claimed: which remedy a later clash gets (#1239). */
4373
+ const terminateNames = new Map();
4371
4374
  let edgeSeq = 0;
4372
4375
  /** Claim a globally unique node id, honouring the scope's rename map. */
4373
4376
  function uid(scope, base) {
@@ -6425,6 +6428,20 @@ export function serialize(built, opts = {}) {
6425
6428
  // version and its handleConfiguration has exactly one TARGET handle. Its
6426
6429
  // terminal flow-output mappings are separate metadata required by the
6427
6430
  // product validator; they do not create a readable node output.
6431
+ //
6432
+ // A Terminate is a `.stepToRef` target (its name is a step name), so a
6433
+ // second `.terminate` asking for a name this scope already holds is
6434
+ // refused, not renamed `<name>2`: that rename turned one Terminate two
6435
+ // paths share into two Terminates with no word said (#1239). `check`
6436
+ // reports it first as DUP_STEP; this is the backstop for `--no-check`.
6437
+ // The remedy depends on what holds the name: another Terminate (end the
6438
+ // other paths at it) or a step of another kind (rename one).
6439
+ if (scope.stepNodeId.has(step.name)) {
6440
+ throw new Error(terminateNames.get(scope)?.has(step.name)
6441
+ ? terminateTwiceMessage(step.name)
6442
+ : terminateStepClashMessage(step.name));
6443
+ }
6444
+ (terminateNames.get(scope) ?? terminateNames.set(scope, new Set()).get(scope)).add(step.name);
6428
6445
  const id = stepUid(scope, step.name);
6429
6446
  const node = makeNode(NODE_TYPE.terminate, id, step.options?.label ?? step.label ?? step.name, { parentId, requestedVersion: step.options?.version });
6430
6447
  node.inputs = {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uipath/maestro-builder-sdk",
3
- "version": "6.32.1",
3
+ "version": "6.32.2",
4
4
  "description": "Build UiPath Flow, Case, and BPMN artifacts by writing TypeScript.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://docs.uipath.com/maestro",
@@ -93,5 +93,5 @@
93
93
  "@types/node": "^22.7.0",
94
94
  "esbuild": "^0.28.1"
95
95
  },
96
- "gitref": "275e6e4608b243bee96fd531b3228f95261f3b32"
96
+ "gitref": "c5c161d5160cc033040ad150154c4fb55e9bada8"
97
97
  }