fix(editor): Fix node position not getting set when dragging selection on new canvas (#11871)

This commit is contained in:
Alex Grozav
2024-11-25 15:29:08 +02:00
committed by GitHub
parent 91d1bd8d33
commit 595de81c03
2 changed files with 5 additions and 4 deletions

View File

@@ -87,8 +87,6 @@ describe('Canvas', () => {
});
it('should handle `update:nodes:position` event', async () => {
vi.useFakeTimers();
const nodes = [createCanvasNodeElement()];
const { container, emitted } = renderComponent({
props: {
@@ -112,8 +110,6 @@ describe('Canvas', () => {
});
await fireEvent.mouseUp(node, { view: window });
vi.advanceTimersByTime(250); // Event debounce time
expect(emitted()['update:nodes:position']).toEqual([
[
[

View File

@@ -271,6 +271,10 @@ function onNodeDragStop(event: NodeDragEvent) {
onUpdateNodesPosition(event.nodes.map(({ id, position }) => ({ id, position })));
}
function onSelectionDragStop(event: NodeDragEvent) {
onUpdateNodesPosition(event.nodes.map(({ id, position }) => ({ id, position })));
}
function onSetNodeActive(id: string) {
props.eventBus.emit('nodes:action', { ids: [id], action: 'update:node:active' });
emit('update:node:active', id);
@@ -644,6 +648,7 @@ provide(CanvasKey, {
@move-start="onPaneMoveStart"
@move-end="onPaneMoveEnd"
@node-drag-stop="onNodeDragStop"
@selection-drag-stop="onSelectionDragStop"
>
<template #node-canvas-node="nodeProps">
<Node