@uipath/apollo-react 4.13.0-pr556.e4e2855 → 4.13.1

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 (132) hide show
  1. package/dist/canvas/components/AddNodePanel/AddNodeManager.cjs +7 -26
  2. package/dist/canvas/components/AddNodePanel/AddNodeManager.d.ts.map +1 -1
  3. package/dist/canvas/components/AddNodePanel/AddNodeManager.js +7 -26
  4. package/dist/canvas/components/AddNodePanel/createAddNodePreview.cjs +41 -0
  5. package/dist/canvas/components/AddNodePanel/createAddNodePreview.d.ts +3 -0
  6. package/dist/canvas/components/AddNodePanel/createAddNodePreview.d.ts.map +1 -0
  7. package/dist/canvas/components/AddNodePanel/createAddNodePreview.js +7 -0
  8. package/dist/canvas/components/AddNodePanel/index.cjs +6 -2
  9. package/dist/canvas/components/AddNodePanel/index.d.ts +1 -0
  10. package/dist/canvas/components/AddNodePanel/index.d.ts.map +1 -1
  11. package/dist/canvas/components/AddNodePanel/index.js +2 -1
  12. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts +0 -1
  13. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts.map +1 -1
  14. package/dist/canvas/components/BaseNode/BaseNode.cjs +20 -15
  15. package/dist/canvas/components/BaseNode/BaseNode.d.ts +1 -2
  16. package/dist/canvas/components/BaseNode/BaseNode.d.ts.map +1 -1
  17. package/dist/canvas/components/BaseNode/BaseNode.js +20 -12
  18. package/dist/canvas/components/ButtonHandle/ButtonHandle.cjs +34 -115
  19. package/dist/canvas/components/ButtonHandle/ButtonHandle.d.ts +2 -4
  20. package/dist/canvas/components/ButtonHandle/ButtonHandle.d.ts.map +1 -1
  21. package/dist/canvas/components/ButtonHandle/ButtonHandle.js +36 -117
  22. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.cjs +18 -52
  23. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.d.ts +0 -4
  24. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.d.ts.map +1 -1
  25. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.js +18 -40
  26. package/dist/canvas/components/ButtonHandle/HandleButton.cjs +9 -3
  27. package/dist/canvas/components/ButtonHandle/HandleButton.d.ts.map +1 -1
  28. package/dist/canvas/components/ButtonHandle/HandleButton.js +9 -3
  29. package/dist/canvas/components/ButtonHandle/HandleLabel.cjs +11 -4
  30. package/dist/canvas/components/ButtonHandle/HandleLabel.d.ts +4 -1
  31. package/dist/canvas/components/ButtonHandle/HandleLabel.d.ts.map +1 -1
  32. package/dist/canvas/components/ButtonHandle/HandleLabel.js +7 -3
  33. package/dist/canvas/components/ButtonHandle/SmartHandle.cjs +2 -2
  34. package/dist/canvas/components/ButtonHandle/SmartHandle.d.ts.map +1 -1
  35. package/dist/canvas/components/ButtonHandle/SmartHandle.js +2 -2
  36. package/dist/canvas/components/Edges/SequenceEdge.cjs +2 -3
  37. package/dist/canvas/components/Edges/SequenceEdge.d.ts +2 -11
  38. package/dist/canvas/components/Edges/SequenceEdge.d.ts.map +1 -1
  39. package/dist/canvas/components/Edges/SequenceEdge.js +3 -4
  40. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.cjs +15 -23
  41. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.d.ts +0 -2
  42. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.d.ts.map +1 -1
  43. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.js +16 -24
  44. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvasWithControls.cjs +8 -11
  45. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvasWithControls.d.ts.map +1 -1
  46. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvasWithControls.js +8 -11
  47. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.cjs +24 -27
  48. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.d.ts +1 -2
  49. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.d.ts.map +1 -1
  50. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.js +25 -28
  51. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.cjs +15 -5
  52. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.d.ts +1 -1
  53. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.d.ts.map +1 -1
  54. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.js +15 -5
  55. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.types.d.ts +1 -0
  56. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.types.d.ts.map +1 -1
  57. package/dist/canvas/components/index.cjs +20 -27
  58. package/dist/canvas/components/index.d.ts +0 -1
  59. package/dist/canvas/components/index.d.ts.map +1 -1
  60. package/dist/canvas/components/index.js +0 -1
  61. package/dist/canvas/constants.cjs +0 -8
  62. package/dist/canvas/constants.d.ts +0 -2
  63. package/dist/canvas/constants.d.ts.map +1 -1
  64. package/dist/canvas/constants.js +1 -3
  65. package/dist/canvas/core/NodeTypeRegistry.cjs +23 -39
  66. package/dist/canvas/core/NodeTypeRegistry.d.ts +4 -8
  67. package/dist/canvas/core/NodeTypeRegistry.d.ts.map +1 -1
  68. package/dist/canvas/core/NodeTypeRegistry.js +23 -39
  69. package/dist/canvas/core/useNodeTypeRegistry.cjs +3 -4
  70. package/dist/canvas/core/useNodeTypeRegistry.d.ts +1 -1
  71. package/dist/canvas/core/useNodeTypeRegistry.d.ts.map +1 -1
  72. package/dist/canvas/core/useNodeTypeRegistry.js +3 -4
  73. package/dist/canvas/hooks/useAddNodeOnConnectEnd.cjs +3 -10
  74. package/dist/canvas/hooks/useAddNodeOnConnectEnd.d.ts.map +1 -1
  75. package/dist/canvas/hooks/useAddNodeOnConnectEnd.js +3 -10
  76. package/dist/canvas/hooks/usePreviewNode.cjs +2 -4
  77. package/dist/canvas/hooks/usePreviewNode.d.ts.map +1 -1
  78. package/dist/canvas/hooks/usePreviewNode.js +2 -4
  79. package/dist/canvas/schema/node-definition/handle.cjs +2 -10
  80. package/dist/canvas/schema/node-definition/handle.d.ts +0 -9
  81. package/dist/canvas/schema/node-definition/handle.d.ts.map +1 -1
  82. package/dist/canvas/schema/node-definition/handle.js +1 -6
  83. package/dist/canvas/schema/node-definition/index.cjs +1 -4
  84. package/dist/canvas/schema/node-definition/index.d.ts +3 -3
  85. package/dist/canvas/schema/node-definition/index.d.ts.map +1 -1
  86. package/dist/canvas/schema/node-definition/index.js +2 -2
  87. package/dist/canvas/schema/node-definition/node-manifest.d.ts +0 -4
  88. package/dist/canvas/schema/node-definition/node-manifest.d.ts.map +1 -1
  89. package/dist/canvas/storybook-utils/manifests/index.d.ts +0 -1
  90. package/dist/canvas/storybook-utils/manifests/index.d.ts.map +1 -1
  91. package/dist/canvas/storybook-utils/manifests/node-definitions.d.ts.map +1 -1
  92. package/dist/canvas/styles/reactflow-reset.css +4 -0
  93. package/dist/canvas/styles/tailwind.canvas.css +1 -1
  94. package/dist/canvas/utils/{createPreviewGraph.cjs → createPreviewNode.cjs} +41 -115
  95. package/dist/canvas/utils/createPreviewNode.d.ts +17 -0
  96. package/dist/canvas/utils/createPreviewNode.d.ts.map +1 -0
  97. package/dist/canvas/utils/{createPreviewGraph.js → createPreviewNode.js} +36 -95
  98. package/dist/canvas/utils/index.cjs +10 -10
  99. package/dist/canvas/utils/index.d.ts +2 -2
  100. package/dist/canvas/utils/index.d.ts.map +1 -1
  101. package/dist/canvas/utils/index.js +2 -2
  102. package/package.json +3 -3
  103. package/dist/canvas/components/LoopNode/LoopCanvasNode.cjs +0 -112
  104. package/dist/canvas/components/LoopNode/LoopCanvasNode.d.ts +0 -6
  105. package/dist/canvas/components/LoopNode/LoopCanvasNode.d.ts.map +0 -1
  106. package/dist/canvas/components/LoopNode/LoopCanvasNode.js +0 -78
  107. package/dist/canvas/components/LoopNode/LoopNode.cjs +0 -430
  108. package/dist/canvas/components/LoopNode/LoopNode.constants.cjs +0 -77
  109. package/dist/canvas/components/LoopNode/LoopNode.constants.d.ts +0 -12
  110. package/dist/canvas/components/LoopNode/LoopNode.constants.d.ts.map +0 -1
  111. package/dist/canvas/components/LoopNode/LoopNode.constants.js +0 -13
  112. package/dist/canvas/components/LoopNode/LoopNode.d.ts +0 -5
  113. package/dist/canvas/components/LoopNode/LoopNode.d.ts.map +0 -1
  114. package/dist/canvas/components/LoopNode/LoopNode.helpers.cjs +0 -137
  115. package/dist/canvas/components/LoopNode/LoopNode.helpers.d.ts +0 -26
  116. package/dist/canvas/components/LoopNode/LoopNode.helpers.d.ts.map +0 -1
  117. package/dist/canvas/components/LoopNode/LoopNode.helpers.js +0 -94
  118. package/dist/canvas/components/LoopNode/LoopNode.js +0 -396
  119. package/dist/canvas/components/LoopNode/LoopNode.types.cjs +0 -18
  120. package/dist/canvas/components/LoopNode/LoopNode.types.d.ts +0 -11
  121. package/dist/canvas/components/LoopNode/LoopNode.types.d.ts.map +0 -1
  122. package/dist/canvas/components/LoopNode/LoopNode.types.js +0 -0
  123. package/dist/canvas/components/LoopNode/LoopNodePreview.cjs +0 -61
  124. package/dist/canvas/components/LoopNode/LoopNodePreview.d.ts +0 -9
  125. package/dist/canvas/components/LoopNode/LoopNodePreview.d.ts.map +0 -1
  126. package/dist/canvas/components/LoopNode/LoopNodePreview.js +0 -27
  127. package/dist/canvas/components/LoopNode/index.cjs +0 -72
  128. package/dist/canvas/components/LoopNode/index.d.ts +0 -4
  129. package/dist/canvas/components/LoopNode/index.d.ts.map +0 -1
  130. package/dist/canvas/components/LoopNode/index.js +0 -3
  131. package/dist/canvas/utils/createPreviewGraph.d.ts +0 -43
  132. package/dist/canvas/utils/createPreviewGraph.d.ts.map +0 -1
@@ -35,20 +35,6 @@ const usePreviewNode_cjs_namespaceObject = require("../../hooks/usePreviewNode.c
35
35
  const external_utils_index_cjs_namespaceObject = require("../../utils/index.cjs");
36
36
  const external_FloatingCanvasPanel_index_cjs_namespaceObject = require("../FloatingCanvasPanel/index.cjs");
37
37
  const external_AddNodePanel_cjs_namespaceObject = require("./AddNodePanel.cjs");
38
- function resolveNodePlacement(nodes, insertedNode, ignoredNodeTypes) {
39
- if (!insertedNode.parentId) return (0, external_utils_index_cjs_namespaceObject.resolveCollisions)(nodes, {
40
- ignoredNodeTypes
41
- });
42
- const siblingNodes = nodes.filter((node)=>node.parentId === insertedNode.parentId);
43
- const resolvedSiblings = (0, external_utils_index_cjs_namespaceObject.resolveCollisions)(siblingNodes, {
44
- ignoredNodeTypes
45
- });
46
- const resolvedSiblingsById = new Map(resolvedSiblings.map((node)=>[
47
- node.id,
48
- node
49
- ]));
50
- return nodes.map((node)=>resolvedSiblingsById.get(node.id) ?? node);
51
- }
52
38
  const AddNodeManager = ({ initializing, customPanel: CustomPanel, createNodeData, onBeforeNodeAdded, onNodeAdded, ignoredNodeTypes })=>{
53
39
  const reactFlowInstance = (0, react_cjs_namespaceObject.useReactFlow)();
54
40
  const registry = (0, index_cjs_namespaceObject.useOptionalNodeTypeRegistry)();
@@ -97,17 +83,15 @@ const AddNodeManager = ({ initializing, customPanel: CustomPanel, createNodeData
97
83
  id: newNodeId,
98
84
  type: nodeItem.data.type,
99
85
  position: currentPreviewNode.position,
100
- parentId: currentPreviewNode.parentId,
101
- extent: currentPreviewNode.extent,
102
86
  selected: true,
103
87
  data: nodeData
104
88
  };
105
- const newNodeManifest = registry?.getManifest(nodeItem.data.type, nodeItem.data.version);
89
+ const newNodeManifest = registry?.getManifest(nodeItem.data.type);
106
90
  const newEdges = [];
107
91
  const previewEdgeIds = [];
108
92
  for (const connectionInfoItem of previewNodeConnectionInfo){
109
93
  const newNodeHandleType = connectionInfoItem.addNewNodeAsSource ? 'source' : 'target';
110
- const newNodeDefaultHandle = newNodeManifest ? registry?.getDefaultHandle(newNodeManifest.nodeType, newNodeHandleType, nodeItem.data.version) : void 0;
94
+ const newNodeDefaultHandle = newNodeManifest ? registry?.getDefaultHandle(newNodeManifest.nodeType, newNodeHandleType) : void 0;
111
95
  const newNodeHandleId = newNodeDefaultHandle?.id;
112
96
  const edgeSourceTargetData = connectionInfoItem.addNewNodeAsSource ? {
113
97
  source: newNode.id,
@@ -124,12 +108,7 @@ const AddNodeManager = ({ initializing, customPanel: CustomPanel, createNodeData
124
108
  newEdges.push({
125
109
  id: newEdgeId,
126
110
  ...edgeSourceTargetData,
127
- type: 'default',
128
- ...currentPreviewNode.parentId ? {
129
- data: {
130
- parentId: currentPreviewNode.parentId
131
- }
132
- } : {}
111
+ type: 'default'
133
112
  });
134
113
  previewEdgeIds.push(connectionInfoItem.previewEdgeId);
135
114
  }
@@ -145,7 +124,9 @@ const AddNodeManager = ({ initializing, customPanel: CustomPanel, createNodeData
145
124
  })),
146
125
  finalNode
147
126
  ];
148
- return resolveNodePlacement(newNodes, finalNode, ignoredNodeTypes);
127
+ return (0, external_utils_index_cjs_namespaceObject.resolveCollisions)(newNodes, {
128
+ ignoredNodeTypes
129
+ });
149
130
  });
150
131
  reactFlowInstance.setEdges((edges)=>[
151
132
  ...edges.filter((e)=>!previewEdgeIds.includes(e.id)),
@@ -153,7 +134,7 @@ const AddNodeManager = ({ initializing, customPanel: CustomPanel, createNodeData
153
134
  ]);
154
135
  const [firstConnection] = previewNodeConnectionInfo;
155
136
  if (firstConnection) {
156
- const firstEdgeSourceHandle = firstConnection.addNewNodeAsSource ? newNodeManifest && registry?.getDefaultHandle(newNodeManifest.nodeType, 'source', nodeItem.data.version)?.id : firstConnection.existingHandleId;
137
+ const firstEdgeSourceHandle = firstConnection.addNewNodeAsSource ? newNodeManifest && registry?.getDefaultHandle(newNodeManifest.nodeType, 'source')?.id : firstConnection.existingHandleId;
157
138
  const firstEdgeData = firstConnection.addNewNodeAsSource ? {
158
139
  source: finalNode.id,
159
140
  sourceHandle: firstEdgeSourceHandle ?? 'output'
@@ -1 +1 @@
1
- {"version":3,"file":"AddNodeManager.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AddNodePanel/AddNodeManager.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,0CAA0C,CAAC;AAE3E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,MAAM,WAAW,mBAAmB;IAKlC,WAAW,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC;IAI7E,YAAY,CAAC,EAAE,OAAO,CAAC;IAIvB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAK7F,cAAc,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,KAAK,YAAY,CAAC;IAOtE,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK;QAAE,OAAO,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,IAAI,EAAE,CAAA;KAAE,CAAC;IAK7F,WAAW,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,KAAK,IAAI,CAAC;IAMpF,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAqBD,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAgNxD,CAAC"}
1
+ {"version":3,"file":"AddNodeManager.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AddNodePanel/AddNodeManager.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,0CAA0C,CAAC;AAE3E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,MAAM,WAAW,mBAAmB;IAKlC,WAAW,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC;IAI7E,YAAY,CAAC,EAAE,OAAO,CAAC;IAIvB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAK7F,cAAc,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,KAAK,YAAY,CAAC;IAOtE,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK;QAAE,OAAO,EAAE,IAAI,CAAC;QAAC,QAAQ,EAAE,IAAI,EAAE,CAAA;KAAE,CAAC;IAK7F,WAAW,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,KAAK,IAAI,CAAC;IAMpF,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AASD,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAqMxD,CAAC"}
@@ -7,20 +7,6 @@ import { usePreviewNode } from "../../hooks/usePreviewNode.js";
7
7
  import { resolveCollisions } from "../../utils/index.js";
8
8
  import { FloatingCanvasPanel } from "../FloatingCanvasPanel/index.js";
9
9
  import { AddNodePanel } from "./AddNodePanel.js";
10
- function resolveNodePlacement(nodes, insertedNode, ignoredNodeTypes) {
11
- if (!insertedNode.parentId) return resolveCollisions(nodes, {
12
- ignoredNodeTypes
13
- });
14
- const siblingNodes = nodes.filter((node)=>node.parentId === insertedNode.parentId);
15
- const resolvedSiblings = resolveCollisions(siblingNodes, {
16
- ignoredNodeTypes
17
- });
18
- const resolvedSiblingsById = new Map(resolvedSiblings.map((node)=>[
19
- node.id,
20
- node
21
- ]));
22
- return nodes.map((node)=>resolvedSiblingsById.get(node.id) ?? node);
23
- }
24
10
  const AddNodeManager = ({ initializing, customPanel: CustomPanel, createNodeData, onBeforeNodeAdded, onNodeAdded, ignoredNodeTypes })=>{
25
11
  const reactFlowInstance = useReactFlow();
26
12
  const registry = useOptionalNodeTypeRegistry();
@@ -69,17 +55,15 @@ const AddNodeManager = ({ initializing, customPanel: CustomPanel, createNodeData
69
55
  id: newNodeId,
70
56
  type: nodeItem.data.type,
71
57
  position: currentPreviewNode.position,
72
- parentId: currentPreviewNode.parentId,
73
- extent: currentPreviewNode.extent,
74
58
  selected: true,
75
59
  data: nodeData
76
60
  };
77
- const newNodeManifest = registry?.getManifest(nodeItem.data.type, nodeItem.data.version);
61
+ const newNodeManifest = registry?.getManifest(nodeItem.data.type);
78
62
  const newEdges = [];
79
63
  const previewEdgeIds = [];
80
64
  for (const connectionInfoItem of previewNodeConnectionInfo){
81
65
  const newNodeHandleType = connectionInfoItem.addNewNodeAsSource ? 'source' : 'target';
82
- const newNodeDefaultHandle = newNodeManifest ? registry?.getDefaultHandle(newNodeManifest.nodeType, newNodeHandleType, nodeItem.data.version) : void 0;
66
+ const newNodeDefaultHandle = newNodeManifest ? registry?.getDefaultHandle(newNodeManifest.nodeType, newNodeHandleType) : void 0;
83
67
  const newNodeHandleId = newNodeDefaultHandle?.id;
84
68
  const edgeSourceTargetData = connectionInfoItem.addNewNodeAsSource ? {
85
69
  source: newNode.id,
@@ -96,12 +80,7 @@ const AddNodeManager = ({ initializing, customPanel: CustomPanel, createNodeData
96
80
  newEdges.push({
97
81
  id: newEdgeId,
98
82
  ...edgeSourceTargetData,
99
- type: 'default',
100
- ...currentPreviewNode.parentId ? {
101
- data: {
102
- parentId: currentPreviewNode.parentId
103
- }
104
- } : {}
83
+ type: 'default'
105
84
  });
106
85
  previewEdgeIds.push(connectionInfoItem.previewEdgeId);
107
86
  }
@@ -117,7 +96,9 @@ const AddNodeManager = ({ initializing, customPanel: CustomPanel, createNodeData
117
96
  })),
118
97
  finalNode
119
98
  ];
120
- return resolveNodePlacement(newNodes, finalNode, ignoredNodeTypes);
99
+ return resolveCollisions(newNodes, {
100
+ ignoredNodeTypes
101
+ });
121
102
  });
122
103
  reactFlowInstance.setEdges((edges)=>[
123
104
  ...edges.filter((e)=>!previewEdgeIds.includes(e.id)),
@@ -125,7 +106,7 @@ const AddNodeManager = ({ initializing, customPanel: CustomPanel, createNodeData
125
106
  ]);
126
107
  const [firstConnection] = previewNodeConnectionInfo;
127
108
  if (firstConnection) {
128
- const firstEdgeSourceHandle = firstConnection.addNewNodeAsSource ? newNodeManifest && registry?.getDefaultHandle(newNodeManifest.nodeType, 'source', nodeItem.data.version)?.id : firstConnection.existingHandleId;
109
+ const firstEdgeSourceHandle = firstConnection.addNewNodeAsSource ? newNodeManifest && registry?.getDefaultHandle(newNodeManifest.nodeType, 'source')?.id : firstConnection.existingHandleId;
129
110
  const firstEdgeData = firstConnection.addNewNodeAsSource ? {
130
111
  source: finalNode.id,
131
112
  sourceHandle: firstEdgeSourceHandle ?? 'output'
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, definition)=>{
5
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
+ enumerable: true,
7
+ get: definition[key]
8
+ });
9
+ };
10
+ })();
11
+ (()=>{
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
+ })();
14
+ (()=>{
15
+ __webpack_require__.r = (exports1)=>{
16
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
+ value: 'Module'
18
+ });
19
+ Object.defineProperty(exports1, '__esModule', {
20
+ value: true
21
+ });
22
+ };
23
+ })();
24
+ var __webpack_exports__ = {};
25
+ __webpack_require__.r(__webpack_exports__);
26
+ __webpack_require__.d(__webpack_exports__, {
27
+ createAddNodePreview: ()=>createAddNodePreview
28
+ });
29
+ const react_cjs_namespaceObject = require("../../xyflow/react.cjs");
30
+ const createPreviewNode_cjs_namespaceObject = require("../../utils/createPreviewNode.cjs");
31
+ function createAddNodePreview(sourceNodeId, sourceHandleId, reactFlowInstance, handlePosition = react_cjs_namespaceObject.Position.Right, sourceHandleType = 'source', ignoredNodeTypes = []) {
32
+ const preview = (0, createPreviewNode_cjs_namespaceObject.createPreviewNode)(sourceNodeId, sourceHandleId, reactFlowInstance, void 0, void 0, sourceHandleType, void 0, handlePosition, ignoredNodeTypes);
33
+ if (preview) (0, createPreviewNode_cjs_namespaceObject.applyPreviewToReactFlow)(preview, reactFlowInstance);
34
+ }
35
+ exports.createAddNodePreview = __webpack_exports__.createAddNodePreview;
36
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
37
+ "createAddNodePreview"
38
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
39
+ Object.defineProperty(exports, '__esModule', {
40
+ value: true
41
+ });
@@ -0,0 +1,3 @@
1
+ import { Position, type ReactFlowInstance } from '../../xyflow/react.ts';
2
+ export declare function createAddNodePreview(sourceNodeId: string, sourceHandleId: string, reactFlowInstance: ReactFlowInstance, handlePosition?: Position, sourceHandleType?: 'source' | 'target', ignoredNodeTypes?: string[]): void;
3
+ //# sourceMappingURL=createAddNodePreview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createAddNodePreview.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AddNodePanel/createAddNodePreview.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAa5F,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,iBAAiB,EAAE,iBAAiB,EACpC,cAAc,GAAE,QAAyB,EACzC,gBAAgB,GAAE,QAAQ,GAAG,QAAmB,EAChD,gBAAgB,GAAE,MAAM,EAAO,GAC9B,IAAI,CAiBN"}
@@ -0,0 +1,7 @@
1
+ import { Position } from "../../xyflow/react.js";
2
+ import { applyPreviewToReactFlow, createPreviewNode } from "../../utils/createPreviewNode.js";
3
+ function createAddNodePreview(sourceNodeId, sourceHandleId, reactFlowInstance, handlePosition = Position.Right, sourceHandleType = 'source', ignoredNodeTypes = []) {
4
+ const preview = createPreviewNode(sourceNodeId, sourceHandleId, reactFlowInstance, void 0, void 0, sourceHandleType, void 0, handlePosition, ignoredNodeTypes);
5
+ if (preview) applyPreviewToReactFlow(preview, reactFlowInstance);
6
+ }
7
+ export { createAddNodePreview };
@@ -24,20 +24,24 @@ var __webpack_require__ = {};
24
24
  var __webpack_exports__ = {};
25
25
  __webpack_require__.r(__webpack_exports__);
26
26
  __webpack_require__.d(__webpack_exports__, {
27
+ AddNodePanel: ()=>external_AddNodePanel_cjs_namespaceObject.AddNodePanel,
27
28
  AddNodeManager: ()=>external_AddNodeManager_cjs_namespaceObject.AddNodeManager,
28
29
  AddNodePreview: ()=>external_AddNodePreview_cjs_namespaceObject.AddNodePreview,
29
- AddNodePanel: ()=>external_AddNodePanel_cjs_namespaceObject.AddNodePanel
30
+ createAddNodePreview: ()=>external_createAddNodePreview_cjs_namespaceObject.createAddNodePreview
30
31
  });
31
32
  const external_AddNodeManager_cjs_namespaceObject = require("./AddNodeManager.cjs");
32
33
  const external_AddNodePanel_cjs_namespaceObject = require("./AddNodePanel.cjs");
33
34
  const external_AddNodePreview_cjs_namespaceObject = require("./AddNodePreview.cjs");
35
+ const external_createAddNodePreview_cjs_namespaceObject = require("./createAddNodePreview.cjs");
34
36
  exports.AddNodeManager = __webpack_exports__.AddNodeManager;
35
37
  exports.AddNodePanel = __webpack_exports__.AddNodePanel;
36
38
  exports.AddNodePreview = __webpack_exports__.AddNodePreview;
39
+ exports.createAddNodePreview = __webpack_exports__.createAddNodePreview;
37
40
  for(var __rspack_i in __webpack_exports__)if (-1 === [
38
41
  "AddNodeManager",
39
42
  "AddNodePanel",
40
- "AddNodePreview"
43
+ "AddNodePreview",
44
+ "createAddNodePreview"
41
45
  ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
42
46
  Object.defineProperty(exports, '__esModule', {
43
47
  value: true
@@ -3,4 +3,5 @@ export { AddNodeManager } from './AddNodeManager';
3
3
  export { AddNodePanel } from './AddNodePanel';
4
4
  export type { AddNodePanelProps, NodeItemData } from './AddNodePanel.types';
5
5
  export { AddNodePreview, type AddNodePreviewData } from './AddNodePreview';
6
+ export { createAddNodePreview } from './createAddNodePreview';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AddNodePanel/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AddNodePanel/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { AddNodeManager } from "./AddNodeManager.js";
2
2
  import { AddNodePanel } from "./AddNodePanel.js";
3
3
  import { AddNodePreview } from "./AddNodePreview.js";
4
- export { AddNodeManager, AddNodePanel, AddNodePreview };
4
+ import { createAddNodePreview } from "./createAddNodePreview.js";
5
+ export { AddNodeManager, AddNodePanel, AddNodePreview, createAddNodePreview };
@@ -77,7 +77,6 @@ export declare const agentFlowManifest: {
77
77
  } | undefined;
78
78
  isDefaultForType?: boolean | undefined;
79
79
  }[];
80
- boundary?: "outer" | "inner" | undefined;
81
80
  customPositionAndOffsets?: {
82
81
  height?: number | undefined;
83
82
  width?: number | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-flow.manifest.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AgentCanvas/agent-flow.manifest.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAMnF,eAAO,MAAM,mBAAmB,EAAE,gBAAgB,EAmBjD,CAAC;AAMF,eAAO,MAAM,2BAA2B,EAAE,YAsDzC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,YAqDrC,CAAC;AAMF,eAAO,MAAM,uBAAuB,EAAE,YAwBrC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,YAwBlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,YAwBjC,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,YAwBxC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,YAwBpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,YAwBjC,CAAC;AAMF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAa7B,CAAC"}
1
+ {"version":3,"file":"agent-flow.manifest.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/AgentCanvas/agent-flow.manifest.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAMnF,eAAO,MAAM,mBAAmB,EAAE,gBAAgB,EAmBjD,CAAC;AAMF,eAAO,MAAM,2BAA2B,EAAE,YAsDzC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,YAqDrC,CAAC;AAMF,eAAO,MAAM,uBAAuB,EAAE,YAwBrC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,YAwBlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,YAwBjC,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,YAwBxC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,YAwBpC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,YAwBjC,CAAC;AAMF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAa7B,CAAC"}
@@ -24,7 +24,6 @@ var __webpack_require__ = {};
24
24
  var __webpack_exports__ = {};
25
25
  __webpack_require__.r(__webpack_exports__);
26
26
  __webpack_require__.d(__webpack_exports__, {
27
- selectIsConnecting: ()=>selectIsConnecting,
28
27
  BaseNode: ()=>BaseNode
29
28
  });
30
29
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
@@ -71,7 +70,6 @@ const getContainerHeight = (height, hasFooter, footerVariant)=>{
71
70
  };
72
71
  const BaseNodeComponent = (props)=>{
73
72
  const { type, data, selected, id, dragging, width, height } = props;
74
- const nodeVersion = 'string' == typeof data?.version ? data.version : void 0;
75
73
  const { onHandleAction: onHandleActionProp, shouldShowAddButtonFn: shouldShowAddButtonFnProp, shouldShowButtonHandleNotchesFn: shouldShowButtonHandleNotchesFnProp, toolbarConfig: toolbarConfigProp, handleConfigurations: handleConfigurationsProp, adornments: adornmentsProp, suggestionType, disabled, executionStatusOverride, labelTooltip, labelBackgroundColor, footerVariant, footerComponent, subLabelComponent, iconComponent } = (0, external_BaseNodeConfigContext_cjs_namespaceObject.useBaseNodeOverrideConfig)();
76
74
  const updateNodeInternals = (0, react_cjs_namespaceObject.useUpdateNodeInternals)();
77
75
  const { updateNodeData, updateNode } = (0, react_cjs_namespaceObject.useReactFlow)();
@@ -89,10 +87,9 @@ const BaseNodeComponent = (props)=>{
89
87
  const isConnecting = (0, react_cjs_namespaceObject.useStore)(selectIsConnecting);
90
88
  const { multipleNodesSelected } = (0, SelectionStateContext_cjs_namespaceObject.useSelectionState)();
91
89
  const { isDarkMode } = (0, CanvasThemeContext_cjs_namespaceObject.useCanvasTheme)();
92
- const manifest = (0, external_react_namespaceObject.useMemo)(()=>nodeTypeRegistry.getManifest(type, nodeVersion), [
90
+ const manifest = (0, external_react_namespaceObject.useMemo)(()=>nodeTypeRegistry.getManifest(type), [
93
91
  type,
94
- nodeTypeRegistry,
95
- nodeVersion
92
+ nodeTypeRegistry
96
93
  ]);
97
94
  const statusContext = (0, external_react_namespaceObject.useMemo)(()=>({
98
95
  nodeId: id,
@@ -181,11 +178,11 @@ const BaseNodeComponent = (props)=>{
181
178
  statusContext
182
179
  ]);
183
180
  const computedHeight = (0, external_react_namespaceObject.useMemo)(()=>{
184
- const handleSpacing = 2.5 * external_constants_cjs_namespaceObject.GRID_SPACING;
185
181
  const leftHandles = handleConfigurations.filter((config)=>config.position === react_cjs_namespaceObject.Position.Left && false !== config.visible).reduce((count, config)=>count + config.handles.filter((h)=>false !== h.visible).length, 0);
186
182
  const rightHandles = handleConfigurations.filter((config)=>config.position === react_cjs_namespaceObject.Position.Right && false !== config.visible).reduce((count, config)=>count + config.handles.filter((h)=>false !== h.visible).length, 0);
187
183
  const leftRightHandles = Math.max(leftHandles, rightHandles);
188
- return Math.max(baseHeightRef.current, leftRightHandles * handleSpacing);
184
+ const minNodeHeight = (2 * leftRightHandles + 2) * external_constants_cjs_namespaceObject.GRID_SPACING;
185
+ return Math.max(baseHeightRef.current, minNodeHeight);
189
186
  }, [
190
187
  handleConfigurations,
191
188
  height
@@ -279,10 +276,19 @@ const BaseNodeComponent = (props)=>{
279
276
  isHovered,
280
277
  isFocused
281
278
  ]);
282
- const shouldShowHandles = (0, external_react_namespaceObject.useMemo)(()=>isConnecting || selected || isHovered, [
279
+ const shouldShowHandles = (0, external_react_namespaceObject.useMemo)(()=>(isConnecting || selected || isHovered) && !dragging, [
283
280
  isConnecting,
284
281
  selected,
285
- isHovered
282
+ isHovered,
283
+ dragging
284
+ ]);
285
+ const toolbarPosition = toolbarConfig?.position ?? (toolbarConfig ? react_cjs_namespaceObject.Position.Top : void 0);
286
+ const hasHandleButtonsAtToolbar = (0, external_react_namespaceObject.useMemo)(()=>{
287
+ if (!toolbarPosition || !handleConfigurations?.length) return false;
288
+ return handleConfigurations.some((config)=>config.position === toolbarPosition && false !== config.visible && config.handles.some((h)=>'source' === h.type && false !== h.showButton));
289
+ }, [
290
+ toolbarPosition,
291
+ handleConfigurations
286
292
  ]);
287
293
  const hasVisibleBottomHandles = (0, external_react_namespaceObject.useMemo)(()=>{
288
294
  if (!handleConfigurations || !Array.isArray(handleConfigurations) || !selected || 'circle' === displayShape) return false;
@@ -330,7 +336,7 @@ const BaseNodeComponent = (props)=>{
330
336
  nodeId: id,
331
337
  selected: selected ?? false,
332
338
  hovered: isHovered,
333
- showAddButton: 'design' === mode && !multipleNodesSelected && !isConnecting,
339
+ showAddButton: 'design' === mode && !multipleNodesSelected && !isConnecting && !dragging,
334
340
  showNotches,
335
341
  nodeWidth: width,
336
342
  nodeHeight: height,
@@ -461,8 +467,9 @@ const BaseNodeComponent = (props)=>{
461
467
  toolbarConfig && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_Toolbar_index_cjs_namespaceObject.NodeToolbar, {
462
468
  nodeId: id,
463
469
  config: toolbarConfig,
464
- expanded: selected,
465
- hidden: dragging || multipleNodesSelected
470
+ expanded: selected || isHovered,
471
+ hidden: dragging || multipleNodesSelected,
472
+ offsetToolbar: hasHandleButtonsAtToolbar
466
473
  })
467
474
  ]
468
475
  }),
@@ -478,10 +485,8 @@ const BaseNodeComponent = (props)=>{
478
485
  };
479
486
  const BaseNode = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(BaseNodeComponent);
480
487
  exports.BaseNode = __webpack_exports__.BaseNode;
481
- exports.selectIsConnecting = __webpack_exports__.selectIsConnecting;
482
488
  for(var __rspack_i in __webpack_exports__)if (-1 === [
483
- "BaseNode",
484
- "selectIsConnecting"
489
+ "BaseNode"
485
490
  ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
486
491
  Object.defineProperty(exports, '__esModule', {
487
492
  value: true
@@ -1,5 +1,4 @@
1
- import type { Node, NodeProps, ReactFlowState } from '../../xyflow/react.ts';
1
+ import type { Node, NodeProps } from '../../xyflow/react.ts';
2
2
  import type { BaseNodeData } from './BaseNode.types';
3
- export declare const selectIsConnecting: (state: ReactFlowState) => boolean;
4
3
  export declare const BaseNode: import("react").MemoExoticComponent<(props: NodeProps<Node<BaseNodeData>>) => import("react/jsx-runtime").JSX.Element>;
5
4
  //# sourceMappingURL=BaseNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAsChG,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,kBAAkB,CAAC;AAa1B,eAAO,MAAM,kBAAkB,GAAI,OAAO,cAAc,YAAkC,CAAC;AAymB3F,eAAO,MAAM,QAAQ,8CAzkBa,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,6CAykBhB,CAAC"}
1
+ {"version":3,"file":"BaseNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAkB,MAAM,0CAA0C,CAAC;AAsChG,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,kBAAkB,CAAC;AA+nB1B,eAAO,MAAM,QAAQ,8CAllBa,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,6CAklBhB,CAAC"}
@@ -42,7 +42,6 @@ const getContainerHeight = (height, hasFooter, footerVariant)=>{
42
42
  };
43
43
  const BaseNodeComponent = (props)=>{
44
44
  const { type, data, selected, id, dragging, width, height } = props;
45
- const nodeVersion = 'string' == typeof data?.version ? data.version : void 0;
46
45
  const { onHandleAction: onHandleActionProp, shouldShowAddButtonFn: shouldShowAddButtonFnProp, shouldShowButtonHandleNotchesFn: shouldShowButtonHandleNotchesFnProp, toolbarConfig: toolbarConfigProp, handleConfigurations: handleConfigurationsProp, adornments: adornmentsProp, suggestionType, disabled, executionStatusOverride, labelTooltip, labelBackgroundColor, footerVariant, footerComponent, subLabelComponent, iconComponent } = useBaseNodeOverrideConfig();
47
46
  const updateNodeInternals = useUpdateNodeInternals();
48
47
  const { updateNodeData, updateNode } = useReactFlow();
@@ -60,10 +59,9 @@ const BaseNodeComponent = (props)=>{
60
59
  const isConnecting = useStore(selectIsConnecting);
61
60
  const { multipleNodesSelected } = useSelectionState();
62
61
  const { isDarkMode } = useCanvasTheme();
63
- const manifest = useMemo(()=>nodeTypeRegistry.getManifest(type, nodeVersion), [
62
+ const manifest = useMemo(()=>nodeTypeRegistry.getManifest(type), [
64
63
  type,
65
- nodeTypeRegistry,
66
- nodeVersion
64
+ nodeTypeRegistry
67
65
  ]);
68
66
  const statusContext = useMemo(()=>({
69
67
  nodeId: id,
@@ -152,11 +150,11 @@ const BaseNodeComponent = (props)=>{
152
150
  statusContext
153
151
  ]);
154
152
  const computedHeight = useMemo(()=>{
155
- const handleSpacing = 2.5 * GRID_SPACING;
156
153
  const leftHandles = handleConfigurations.filter((config)=>config.position === Position.Left && false !== config.visible).reduce((count, config)=>count + config.handles.filter((h)=>false !== h.visible).length, 0);
157
154
  const rightHandles = handleConfigurations.filter((config)=>config.position === Position.Right && false !== config.visible).reduce((count, config)=>count + config.handles.filter((h)=>false !== h.visible).length, 0);
158
155
  const leftRightHandles = Math.max(leftHandles, rightHandles);
159
- return Math.max(baseHeightRef.current, leftRightHandles * handleSpacing);
156
+ const minNodeHeight = (2 * leftRightHandles + 2) * GRID_SPACING;
157
+ return Math.max(baseHeightRef.current, minNodeHeight);
160
158
  }, [
161
159
  handleConfigurations,
162
160
  height
@@ -250,10 +248,19 @@ const BaseNodeComponent = (props)=>{
250
248
  isHovered,
251
249
  isFocused
252
250
  ]);
253
- const shouldShowHandles = useMemo(()=>isConnecting || selected || isHovered, [
251
+ const shouldShowHandles = useMemo(()=>(isConnecting || selected || isHovered) && !dragging, [
254
252
  isConnecting,
255
253
  selected,
256
- isHovered
254
+ isHovered,
255
+ dragging
256
+ ]);
257
+ const toolbarPosition = toolbarConfig?.position ?? (toolbarConfig ? Position.Top : void 0);
258
+ const hasHandleButtonsAtToolbar = useMemo(()=>{
259
+ if (!toolbarPosition || !handleConfigurations?.length) return false;
260
+ return handleConfigurations.some((config)=>config.position === toolbarPosition && false !== config.visible && config.handles.some((h)=>'source' === h.type && false !== h.showButton));
261
+ }, [
262
+ toolbarPosition,
263
+ handleConfigurations
257
264
  ]);
258
265
  const hasVisibleBottomHandles = useMemo(()=>{
259
266
  if (!handleConfigurations || !Array.isArray(handleConfigurations) || !selected || 'circle' === displayShape) return false;
@@ -301,7 +308,7 @@ const BaseNodeComponent = (props)=>{
301
308
  nodeId: id,
302
309
  selected: selected ?? false,
303
310
  hovered: isHovered,
304
- showAddButton: 'design' === mode && !multipleNodesSelected && !isConnecting,
311
+ showAddButton: 'design' === mode && !multipleNodesSelected && !isConnecting && !dragging,
305
312
  showNotches,
306
313
  nodeWidth: width,
307
314
  nodeHeight: height,
@@ -432,8 +439,9 @@ const BaseNodeComponent = (props)=>{
432
439
  toolbarConfig && /*#__PURE__*/ jsx(NodeToolbar, {
433
440
  nodeId: id,
434
441
  config: toolbarConfig,
435
- expanded: selected,
436
- hidden: dragging || multipleNodesSelected
442
+ expanded: selected || isHovered,
443
+ hidden: dragging || multipleNodesSelected,
444
+ offsetToolbar: hasHandleButtonsAtToolbar
437
445
  })
438
446
  ]
439
447
  }),
@@ -448,4 +456,4 @@ const BaseNodeComponent = (props)=>{
448
456
  return nodeContent;
449
457
  };
450
458
  const BaseNode = /*#__PURE__*/ memo(BaseNodeComponent);
451
- export { BaseNode, selectIsConnecting };
459
+ export { BaseNode };