Skip to content

Commit faea0e7

Browse files
committed
feat(hooks): add default edge styling for switch nodes
Handle default edges from switch nodes with distinct styling and labeling to differentiate them from condition edges
1 parent a1c030a commit faea0e7

File tree

2 files changed

+14
-5
lines changed

2 files changed

+14
-5
lines changed

src/lib/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "serverless-workflow-builder-lib",
3-
"version": "1.0.2",
3+
"version": "1.0.3",
44
"description": "A reusable library for building serverless workflow editors with React Flow",
55
"main": "index.js",
66
"keywords": [

src/lib/src/hooks/useEdgeConnection.js

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,18 @@ export const useEdgeConnection = (edges, updateEdges, setHistoryState, nodes, wo
2020
let edgeClass = 'edge-simple edge-animated';
2121
let strokeColor = '#10b981'; // success color
2222

23-
// Determine edge styling based on node types
23+
// Determine edge styling based on node types and source handle
2424
if (sourceNode?.type === 'switch') {
25-
edgeType = 'condition';
26-
edgeClass = 'edge-condition';
27-
strokeColor = '#f59e0b'; // warning color
25+
// Check if this is a default edge from a switch node
26+
if (connection.sourceHandle === 'default') {
27+
edgeType = 'default';
28+
edgeClass = 'edge-default';
29+
strokeColor = '#6b7280'; // gray color for default edges
30+
} else {
31+
edgeType = 'condition';
32+
edgeClass = 'edge-condition';
33+
strokeColor = '#f59e0b'; // warning color
34+
}
2835
} else if (targetNode?.type === 'end') {
2936
edgeType = 'end';
3037
edgeClass = 'edge-end';
@@ -72,6 +79,8 @@ export const useEdgeConnection = (edges, updateEdges, setHistoryState, nodes, wo
7279
// Add label based on edge type
7380
if (edgeType === 'condition') {
7481
newEdge.label = 'condition';
82+
} else if (edgeType === 'default') {
83+
newEdge.label = 'default';
7584
} else if (edgeType === 'end') {
7685
newEdge.label = 'end';
7786
} else {

0 commit comments

Comments
 (0)