fix: attempt at fixing the dancing arrows

This commit is contained in:
Mark Tolmacs
2025-08-26 15:38:58 +02:00
parent 53f50564f4
commit 092e978a04

View File

@@ -240,6 +240,30 @@ export const getStartGlobalEndLocalPointsForSimpleArrowBinding = (
): [GlobalPoint, LocalPoint] => {
let startGlobalPoint = startPoint;
let endLocalPoint = endPoint;
if (end.mode) {
const newEndLocalPoint = updateBoundPoint(
arrow,
"endBinding",
end.mode
? {
...calculateFixedPointForNonElbowArrowBinding(
arrow,
end.element,
"end",
elementsMap,
end.focusPoint,
),
elementId: end.element.id,
mode: end.mode,
}
: null,
end.element,
elementsMap,
);
endLocalPoint = newEndLocalPoint ?? endLocalPoint;
}
if (start.mode) {
const newStartLocalPoint = updateBoundPoint(
arrow,
@@ -269,29 +293,6 @@ export const getStartGlobalEndLocalPointsForSimpleArrowBinding = (
: startGlobalPoint;
}
if (end.mode) {
const newEndLocalPoint = updateBoundPoint(
arrow,
"endBinding",
end.mode
? {
...calculateFixedPointForNonElbowArrowBinding(
arrow,
end.element,
"end",
elementsMap,
end.focusPoint,
),
elementId: end.element.id,
mode: end.mode,
}
: null,
end.element,
elementsMap,
);
endLocalPoint = newEndLocalPoint ?? endLocalPoint;
}
return [
startGlobalPoint,
pointFrom<LocalPoint>(