@hostwebhook/node-types 1.10.6 → 1.10.8

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/types.d.ts CHANGED
@@ -49,7 +49,16 @@ export interface NodeUIConfig {
49
49
  summaryField?: string;
50
50
  /** Label shown in the modal (e.g. 'output', 'branch') */
51
51
  label: string;
52
+ /** Entity field for the fallback/else path (e.g. 'elseOutputNodes', 'remainderOutputNodes') */
53
+ elseField?: string;
52
54
  };
55
+ /**
56
+ * Maps output fields to alternate payload fields on the source entity.
57
+ * When a downstream node is connected via a specific output field,
58
+ * InputSection reads the alternate payload instead of lastPayload.
59
+ * Example: { doneOutputNodes: 'lastDonePayload' } for loop nodes.
60
+ */
61
+ alternatePayloads?: Record<string, string>;
53
62
  };
54
63
  }
55
64
  /** API dispatch config — how the event pipeline processes each node */
package/dist/ui.js CHANGED
@@ -14,7 +14,7 @@ exports.NODE_UI = {
14
14
  filter: { fromNodes: true, toNodes: true },
15
15
  transform: { fromNodes: true, toNodes: true },
16
16
  schemaValidator: { fromNodes: true, toNodes: true },
17
- conditional: { fromNodes: true, toNodes: true, outputHandles: ['right', 'bottom'], special: { connectModal: 'output-group', outputGroups: { field: 'branches', nameField: 'name', summaryField: 'filterMode', label: 'branch' } } },
17
+ conditional: { fromNodes: true, toNodes: true, outputHandles: ['right', 'bottom'], special: { connectModal: 'output-group', outputGroups: { field: 'branches', nameField: 'name', summaryField: 'filterMode', label: 'branch', elseField: 'elseOutputNodes' } } },
18
18
  delay: { fromNodes: true, toNodes: true },
19
19
  rateLimiter: { fromNodes: true, toNodes: true },
20
20
  aggregator: { fromNodes: true, toNodes: true },
@@ -22,10 +22,10 @@ exports.NODE_UI = {
22
22
  code: { fromNodes: true, toNodes: true },
23
23
  ai: { fromNodes: true, toNodes: true },
24
24
  // ── Flow control nodes ──
25
- split: { fromNodes: true, toNodes: true, outputHandles: ['right', 'bottom'], special: { connectModal: 'output-group', outputGroups: { field: 'outputs', nameField: 'name', summaryField: 'field', label: 'output' } } },
25
+ split: { fromNodes: true, toNodes: true, outputHandles: ['right', 'bottom'], special: { connectModal: 'output-group', outputGroups: { field: 'outputs', nameField: 'name', summaryField: 'field', label: 'output', elseField: 'remainderOutputNodes' } } },
26
26
  merge: { fromNodes: true, toNodes: true, inputHandles: ['left', 'top'] },
27
27
  approval: { fromNodes: true, toNodes: true, outputHandles: ['right', 'bottom'], special: { rejectionEndpoints: 'rejectionEndpointIds' } },
28
- loop: { fromNodes: true, toNodes: true, inputHandles: ['left'], outputHandles: ['right'], dotHandles: { input: ['left-in'], output: ['right-out-loop', 'right-in-loopback', 'right-out-done'] }, special: { hasLoopBack: true } },
28
+ loop: { fromNodes: true, toNodes: true, inputHandles: ['left'], outputHandles: ['right'], dotHandles: { input: ['left-in'], output: ['right-out-loop', 'right-in-loopback', 'right-out-done'] }, special: { hasLoopBack: true, alternatePayloads: { doneOutputNodes: 'lastDonePayload' } } },
29
29
  // ── Routing nodes ──
30
30
  router: { fromNodes: true, toNodes: true, outputHandles: ['right', 'bottom'], dotHandles: { output: ['right-out', 'bottom-out'] }, special: { connectModal: 'rule' } },
31
31
  // ── Action nodes ──
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hostwebhook/node-types",
3
- "version": "1.10.6",
3
+ "version": "1.10.8",
4
4
  "description": "Shared node type definitions, connection rules, and dispatch config for HostWebhook",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",