refactor(deleteElements): use onbeforedelete from store
This commit is contained in:
@@ -30,8 +30,8 @@ export function useGlobalKeyHandler({
|
||||
|
||||
useEffect(() => {
|
||||
if (deleteKeyPressed) {
|
||||
const { edges, nodes, onBeforeDelete } = store.getState();
|
||||
deleteElements({ nodes: nodes.filter(selected), edges: edges.filter(selected), onBeforeDelete });
|
||||
const { edges, nodes } = store.getState();
|
||||
deleteElements({ nodes: nodes.filter(selected), edges: edges.filter(selected) });
|
||||
store.setState({ nodesSelectionActive: false });
|
||||
}
|
||||
}, [deleteKeyPressed]);
|
||||
|
||||
@@ -118,7 +118,7 @@ export function useReactFlow<NodeType extends Node = Node, EdgeType extends Edge
|
||||
}, []);
|
||||
|
||||
const deleteElements = useCallback<Instance.DeleteElements>(
|
||||
async ({ nodes: nodesToRemove = [], edges: edgesToRemove = [], onBeforeDelete }) => {
|
||||
async ({ nodes: nodesToRemove = [], edges: edgesToRemove = [] }) => {
|
||||
const {
|
||||
nodes,
|
||||
edges,
|
||||
@@ -129,6 +129,7 @@ export function useReactFlow<NodeType extends Node = Node, EdgeType extends Edge
|
||||
onNodesChange,
|
||||
onEdgesChange,
|
||||
onDelete,
|
||||
onBeforeDelete,
|
||||
} = store.getState();
|
||||
const { nodes: matchingNodes, edges: matchingEdges } = await getElementsToRemove({
|
||||
nodesToRemove,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* eslint-disable @typescript-eslint/no-explicit-any */
|
||||
/* eslint-disable @typescript-eslint/no-namespace */
|
||||
import type { OnBeforeDelete, Rect, Viewport } from '@xyflow/system';
|
||||
import type { Rect, Viewport } from '@xyflow/system';
|
||||
import type { Node, Edge, ViewportHelperFunctions } from '.';
|
||||
|
||||
export type ReactFlowJsonObject<NodeType extends Node = Node, EdgeType extends Edge = Edge> = {
|
||||
@@ -12,7 +12,6 @@ export type ReactFlowJsonObject<NodeType extends Node = Node, EdgeType extends E
|
||||
export type DeleteElementsOptions = {
|
||||
nodes?: (Node | { id: Node['id'] })[];
|
||||
edges?: (Edge | { id: Edge['id'] })[];
|
||||
onBeforeDelete?: OnBeforeDelete;
|
||||
};
|
||||
|
||||
export namespace Instance {
|
||||
|
||||
Reference in New Issue
Block a user