revert: set emits explicitly
This commit is contained in:
@@ -1,10 +1,21 @@
|
|||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
|
import type { D3ZoomEvent } from 'd3-zoom'
|
||||||
import Viewport from '../Viewport/Viewport.vue'
|
import Viewport from '../Viewport/Viewport.vue'
|
||||||
import { useHooks } from '../../store'
|
import { useHooks } from '../../store'
|
||||||
import { useVueFlow } from '../../composables'
|
import { useVueFlow } from '../../composables'
|
||||||
import type { FlowProps } from '../../types/flow'
|
import type { FlowElements, FlowProps } from '../../types/flow'
|
||||||
import type { Emits } from '../../types/hooks'
|
|
||||||
import { Slots } from '../../context'
|
import { Slots } from '../../context'
|
||||||
|
import type {
|
||||||
|
Connection,
|
||||||
|
EdgeChange,
|
||||||
|
GraphEdge,
|
||||||
|
GraphNode,
|
||||||
|
NodeChange,
|
||||||
|
OnConnectStartParams,
|
||||||
|
ViewpaneTransform,
|
||||||
|
VueFlowStore,
|
||||||
|
} from '../../types'
|
||||||
|
import type { EdgeMouseEvent, NodeDragEvent, NodeMouseEvent } from '../../types/hooks'
|
||||||
import useWatch from './watch'
|
import useWatch from './watch'
|
||||||
|
|
||||||
const props = withDefaults(defineProps<FlowProps>(), {
|
const props = withDefaults(defineProps<FlowProps>(), {
|
||||||
@@ -27,7 +38,58 @@ const props = withDefaults(defineProps<FlowProps>(), {
|
|||||||
connectionLineStyle: undefined,
|
connectionLineStyle: undefined,
|
||||||
})
|
})
|
||||||
|
|
||||||
const emit = defineEmits<Emits>()
|
const emit = defineEmits<{
|
||||||
|
(event: 'nodesChange', changes: NodeChange[]): void
|
||||||
|
(event: 'edgesChange', changes: EdgeChange[]): void
|
||||||
|
(event: 'nodeDoubleClick', nodeMouseEvent: NodeMouseEvent): void
|
||||||
|
(event: 'nodeClick', nodeMouseEvent: NodeMouseEvent): void
|
||||||
|
(event: 'nodeMouseEnter', nodeMouseEvent: NodeMouseEvent): void
|
||||||
|
(event: 'nodeMouseMove', nodeMouseEvent: NodeMouseEvent): void
|
||||||
|
(event: 'nodeMouseLeave', nodeMouseEvent: NodeMouseEvent): void
|
||||||
|
(event: 'nodeContextMenu', nodeMouseEvent: NodeMouseEvent): void
|
||||||
|
(event: 'nodeDragStart', nodeDragEvent: NodeDragEvent): void
|
||||||
|
(event: 'nodeDrag', nodeDragEvent: NodeDragEvent): void
|
||||||
|
(event: 'nodeDragStop', nodeDragEvent: NodeDragEvent): void
|
||||||
|
(event: 'miniMapNodeClick', nodeMouseEvent: NodeMouseEvent): void
|
||||||
|
(event: 'miniMapNodeDoubleClick', nodeMouseEvent: NodeMouseEvent): void
|
||||||
|
(event: 'miniMapNodeMouseEnter', nodeMouseEvent: NodeMouseEvent): void
|
||||||
|
(event: 'miniMapNodeMouseMove', nodeMouseEvent: NodeMouseEvent): void
|
||||||
|
(event: 'miniMapNodeMouseLeave', nodeMouseEvent: NodeMouseEvent): void
|
||||||
|
(event: 'connect', connectionEvent: Connection): void
|
||||||
|
(
|
||||||
|
event: 'connectStart',
|
||||||
|
connectionEvent: {
|
||||||
|
event: MouseEvent
|
||||||
|
} & OnConnectStartParams,
|
||||||
|
): void
|
||||||
|
(event: 'connectStop', connectionEvent: MouseEvent): void
|
||||||
|
(event: 'connectEnd', connectionEvent: MouseEvent): void
|
||||||
|
(event: 'moveStart', moveEvent: { event: D3ZoomEvent<HTMLDivElement, any>; flowTransform: ViewpaneTransform }): void
|
||||||
|
(event: 'move', moveEvent: { event: D3ZoomEvent<HTMLDivElement, any>; flowTransform: ViewpaneTransform }): void
|
||||||
|
(event: 'moveEnd', moveEvent: { event: D3ZoomEvent<HTMLDivElement, any>; flowTransform: ViewpaneTransform }): void
|
||||||
|
(event: 'selectionDragStart', selectionEvent: NodeDragEvent): void
|
||||||
|
(event: 'selectionDrag', selectionEvent: NodeDragEvent): void
|
||||||
|
(event: 'selectionDragStop', selectionEvent: NodeDragEvent): void
|
||||||
|
(event: 'selectionContextMenu', selectionEvent: { event: MouseEvent; nodes: GraphNode[] }): void
|
||||||
|
(event: 'paneReady', paneEvent: VueFlowStore): void
|
||||||
|
(event: 'paneScroll', paneEvent: WheelEvent | undefined): void
|
||||||
|
(event: 'paneClick', paneEvent: MouseEvent): void
|
||||||
|
(event: 'paneContextMenu', paneEvent: MouseEvent): void
|
||||||
|
(event: 'edgeContextMenu', edgeMouseEvent: EdgeMouseEvent): void
|
||||||
|
(event: 'edgeMouseEnter', edgeMouseEvent: EdgeMouseEvent): void
|
||||||
|
(event: 'edgeMouseMove', edgeMouseEvent: MouseEvent): void
|
||||||
|
(event: 'edgeMouseLeave', edgeMouseEvent: MouseEvent): void
|
||||||
|
(event: 'edgeDoubleClick', edgeMouseEvent: MouseEvent): void
|
||||||
|
(event: 'edgeClick', edgeMouseEvent: MouseEvent): void
|
||||||
|
(event: 'edgeUpdateStart', edgeMouseEvent: MouseEvent): void
|
||||||
|
(event: 'edgeUpdate', edgeMouseEvent: MouseEvent): void
|
||||||
|
(event: 'edgeUpdateEnd', edgeMouseEvent: MouseEvent): void
|
||||||
|
|
||||||
|
/** v-model event definitions */
|
||||||
|
(event: 'update:modelValue', value: FlowElements): void
|
||||||
|
(event: 'update:nodes', value: GraphNode[]): void
|
||||||
|
(event: 'update:edges', value: GraphEdge[]): void
|
||||||
|
}>()
|
||||||
|
|
||||||
const modelValue = useVModel(props, 'modelValue', emit)
|
const modelValue = useVModel(props, 'modelValue', emit)
|
||||||
const modelNodes = useVModel(props, 'nodes', emit)
|
const modelNodes = useVModel(props, 'nodes', emit)
|
||||||
|
|||||||
Reference in New Issue
Block a user