refactor(nodes): use HandleConnectable type for nodes connectable prop

This commit is contained in:
braks
2022-10-10 21:33:44 +02:00
committed by Braks
parent 0215d49ad3
commit 283846c196
5 changed files with 36 additions and 34 deletions
@@ -1,7 +1,7 @@
<script lang="ts" setup>
import { useVModel } from '@vueuse/core'
import { useDrag, useNodeHooks, useVueFlow } from '../../composables'
import type { GraphNode, NodeComponent, SnapGrid, XYZPosition } from '../../types'
import type { GraphNode, HandleConnectable, NodeComponent, SnapGrid, XYZPosition } from '../../types'
import { NodeId, NodeRef } from '../../context'
import { getConnectedEdges, getXYZPos, handleNodeClick } from '../../utils'
@@ -9,7 +9,7 @@ const { id, type, name, draggable, selectable, connectable, snapGrid, ...props }
id: string
draggable: boolean
selectable: boolean
connectable: boolean
connectable: HandleConnectable
snapGrid?: SnapGrid
type: NodeComponent | Function | Object | false
name: string
@@ -39,6 +39,8 @@ const node = $(useVModel(props, 'node'))
const parentNode = $computed(() => (node.parentNode ? getNode(node.parentNode) : undefined))
const connectedEdges = $computed(() => getConnectedEdges([node], edges))
const nodeElement = ref()
provide(NodeRef, nodeElement)
@@ -137,19 +139,19 @@ onBeforeUnmount(() => {
const onMouseEnter = (event: MouseEvent) => {
if (!dragging?.value) {
emit.mouseEnter({ event, node, connectedEdges: getConnectedEdges([node], edges) })
emit.mouseEnter({ event, node, connectedEdges })
}
}
const onMouseMove = (event: MouseEvent) => {
if (!dragging?.value) {
emit.mouseMove({ event, node, connectedEdges: getConnectedEdges([node], edges) })
emit.mouseMove({ event, node, connectedEdges })
}
}
const onMouseLeave = (event: MouseEvent) => {
if (!dragging?.value) {
emit.mouseLeave({ event, node, connectedEdges: getConnectedEdges([node], edges) })
emit.mouseLeave({ event, node, connectedEdges })
}
}