fix(nodes): nodeExtent not set on position update

Signed-off-by: Braks <78412429+bcakmakoglu@users.noreply.github.com>
This commit is contained in:
Braks
2021-11-26 15:33:56 +01:00
parent 4740a2c8fe
commit 27e39796a0
2 changed files with 11 additions and 6 deletions

View File

@@ -21,8 +21,8 @@ const dagreGraph = new dagre.graphlib.Graph()
dagreGraph.setDefaultEdgeLabel(() => ({}))
const nodeExtent: NodeExtent = [
[0, 0],
[1000, 1000],
[0, -100],
[1000, 500],
]
const elements = ref<Elements>(initialElements)

View File

@@ -3,7 +3,7 @@ import { DraggableEventListener, DraggableCore } from '@braks/revue-draggable'
import { useStore } from '../../composables'
import { GraphNode, SnapGrid, Draggable, NodeDimensionUpdate } from '../../types'
import { NodeId } from '../../context'
import { getDimensions, getHandleBounds } from '../../utils'
import { clampPosition, getDimensions, getHandleBounds } from '../../utils'
interface NodeWrapperProps {
node: GraphNode
@@ -56,9 +56,14 @@ const onDragStart: DraggableEventListener = ({ event }) => {
store.addSelectedElements([])
}
}
const onDrag: DraggableEventListener = ({ event, data }) => {
node.value.position.x += data.deltaX
node.value.position.y += data.deltaY
const onDrag: DraggableEventListener = ({ event, data: { deltaY, deltaX } }) => {
node.value.position = clampPosition(
{
x: (node.value.position.x += deltaX),
y: (node.value.position.y += deltaY),
},
store.nodeExtent,
)
node.value.__vf.isDragging = true
store.hooks.nodeDrag.trigger({ event, node: props.node })
}