Skip to content

Commit 99d2cda

Browse files
committed
chore(core): cleanup
Signed-off-by: braks <[email protected]>
1 parent 033c4d4 commit 99d2cda

File tree

8 files changed

+29
-70
lines changed

8 files changed

+29
-70
lines changed

packages/core/src/components/Nodes/NodeWrapper.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import {
1313
watch,
1414
} from 'vue'
1515
import { until } from '@vueuse/core'
16+
import { snapPosition } from '@xyflow/system'
1617
import {
1718
ARIA_NODE_DESC_KEY,
1819
ErrorCode,
@@ -22,7 +23,6 @@ import {
2223
elementSelectionKeys,
2324
getXYZPos,
2425
handleNodeClick,
25-
snapPosition,
2626
} from '../../utils'
2727
import { NodeId, NodeRef, Slots } from '../../context'
2828
import { isInputDOMNode, useDrag, useNode, useNodeHooks, useUpdateNodePositions, useVueFlow } from '../../composables'

packages/core/src/composables/useDrag.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ import { drag } from 'd3-drag'
33
import { select } from 'd3-selection'
44
import type { MaybeRefOrGetter, Ref } from 'vue'
55
import { ref, toValue, watch } from 'vue'
6-
import { calcAutoPan, getEventPosition } from '@xyflow/system'
6+
import { calcAutoPan, getEventPosition, snapPosition } from '@xyflow/system'
77
import type { MouseTouchEvent, NodeDragEvent, NodeDragItem, XYPosition } from '../types'
8-
import { calcNextPosition, getDragItems, getEventHandlerParams, handleNodeClick, hasSelector } from '../utils'
8+
import { calcNextPosition, getDragItems, getEventHandlerParams, handleNodeClick, hasSelector, isUseDragEvent } from '../utils'
99
import { useGetPointerPosition, useVueFlow } from '.'
1010

1111
export type UseDragEvent = D3DragEvent<HTMLDivElement, null, SubjectPosition>

packages/core/src/composables/useGetPointerPosition.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import { getEventPosition, isUseDragEvent, pointToRendererPoint, snapPosition } from '../utils'
1+
import { getEventPosition, snapPosition } from '@xyflow/system'
2+
import { isUseDragEvent, pointToRendererPoint } from '../utils'
23
import type { MouseTouchEvent } from '../types'
34
import { useVueFlow } from './useVueFlow'
45
import type { UseDragEvent } from './useDrag'

packages/core/src/composables/useHandle.ts

+8-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,10 @@ import type { Connection, ConnectionInProgress, HandleElement, HandleType, Mouse
55
import {
66
getClosestHandle,
77
getConnectionStatus,
8+
getHandle,
9+
getHandlePosition,
810
getHandleType,
11+
isConnectionValid,
912
isValidHandle,
1013
oppositePosition,
1114
pointToRendererPoint,
@@ -212,7 +215,11 @@ export function useHandle({
212215
isValid,
213216
to:
214217
closestHandle && isValid
215-
? rendererPointToPoint({ x: closestHandle.x, y: closestHandle.y }, viewport.value)
218+
? rendererPointToPoint({ x: closestHandle.x, y: closestHandle.y }, [
219+
viewport.value.x,
220+
viewport.value.y,
221+
viewport.value.zoom,
222+
])
216223
: connectionPosition,
217224
toHandle: result.toHandle,
218225
toPosition: isValid && result.toHandle ? result.toHandle.position : oppositePosition[fromHandle.position],

packages/core/src/utils/drag.ts

+5
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { markRaw } from 'vue'
2+
import type { UseDragEvent } from '@xyflow/system'
23
import { clampPosition } from '@xyflow/system'
34
import type {
45
Actions,
@@ -12,6 +13,10 @@ import type {
1213
} from '../types'
1314
import { ErrorCode, VueFlowError, isParentSelected } from '.'
1415

16+
export function isUseDragEvent(event: any): event is UseDragEvent {
17+
return 'sourceEvent' in event
18+
}
19+
1520
export function hasSelector(target: Element, selector: string, node: Element): boolean {
1621
let current = target
1722

packages/core/src/utils/graph.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { markRaw } from 'vue'
22
import type { Viewport } from '@xyflow/system'
3-
import { boxToRect, clamp, getBoundsOfBoxes, getOverlappingArea, rectToBox } from '@xyflow/system'
3+
import { boxToRect, clamp, getBoundsOfBoxes, getOverlappingArea, rectToBox, snapPosition } from '@xyflow/system'
44
import type {
55
Actions,
66
Box,
@@ -20,7 +20,7 @@ import type {
2020
XYPosition,
2121
XYZPosition,
2222
} from '../types'
23-
import { isDef, snapPosition } from '.'
23+
import { isDef } from '.'
2424

2525
export function nodeToRect(node: GraphNode): Rect {
2626
return {

packages/core/src/utils/handle.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { getEventPosition } from '@xyflow/system'
1+
import { getEventPosition, getOverlappingArea } from '@xyflow/system'
22
import { ConnectionMode, Position } from '../types'
33
import type {
44
Actions,
@@ -15,7 +15,7 @@ import type {
1515
Result,
1616
XYPosition,
1717
} from '../types'
18-
import { getHandlePosition, getOverlappingArea, nodeToRect } from '.'
18+
import { getHandlePosition, nodeToRect } from '.'
1919

2020
const alwaysValid = () => true
2121

pnpm-lock.yaml

+7-61
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)