refactor(errors): show error when user drags uninitialized node #5014
This commit is contained in:
@@ -26,6 +26,8 @@ export const errorMessages = {
|
||||
`It seems that you haven't loaded the styles. Please import '@xyflow/${lib}/dist/style.css' or base.css to make sure everything is working properly.`,
|
||||
error014: () =>
|
||||
'useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.',
|
||||
error015: () =>
|
||||
'It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.',
|
||||
};
|
||||
|
||||
export const infiniteExtent: CoordinateExtent = [
|
||||
|
||||
@@ -428,10 +428,14 @@ export function calculateNodePosition<NodeType extends NodeBase>({
|
||||
? clampPosition(nextPosition, extent, node.measured)
|
||||
: nextPosition;
|
||||
|
||||
if (node.measured.width === undefined || node.measured.height === undefined) {
|
||||
onError?.('015', errorMessages['error015']());
|
||||
}
|
||||
|
||||
return {
|
||||
position: {
|
||||
x: positionAbsolute.x - parentX + node.measured.width! * origin[0],
|
||||
y: positionAbsolute.y - parentY + node.measured.height! * origin[1],
|
||||
x: positionAbsolute.x - parentX + (node.measured.width ?? 0) * origin[0],
|
||||
y: positionAbsolute.y - parentY + (node.measured.height ?? 0) * origin[1],
|
||||
},
|
||||
positionAbsolute,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user