chore(core): cleanup update edge action
Signed-off-by: braks <78412429+bcakmakoglu@users.noreply.github.com>
This commit is contained in:
@@ -427,7 +427,7 @@ export function useActions(state: State, getters: ComputedGetters): Actions {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const updateEdge: Actions['updateEdge'] = (oldEdge, newConnection, shouldReplaceId = true) =>
|
const updateEdge: Actions['updateEdge'] = (oldEdge, newConnection, shouldReplaceId = true) =>
|
||||||
updateEdgeAction(oldEdge, newConnection, state.edges, shouldReplaceId)
|
updateEdgeAction(oldEdge, newConnection, state.edges, findEdge, shouldReplaceId)
|
||||||
|
|
||||||
const applyNodeChanges: Actions['applyNodeChanges'] = (changes) => applyChanges(changes, state.nodes)
|
const applyNodeChanges: Actions['applyNodeChanges'] = (changes) => applyChanges(changes, state.nodes)
|
||||||
|
|
||||||
|
|||||||
@@ -10,25 +10,34 @@ export function addEdgeToStore(edgeParams: Edge | Connection, edges: Edge[]) {
|
|||||||
|
|
||||||
let edge
|
let edge
|
||||||
if (isEdge(edgeParams)) {
|
if (isEdge(edgeParams)) {
|
||||||
edge = { ...edgeParams }
|
edge = edgeParams
|
||||||
} else {
|
} else {
|
||||||
edge = {
|
edge = {
|
||||||
...edgeParams,
|
...edgeParams,
|
||||||
id: getEdgeId(edgeParams),
|
id: getEdgeId(edgeParams),
|
||||||
} as Edge
|
} as Edge
|
||||||
}
|
}
|
||||||
|
|
||||||
edge = parseEdge(edge)
|
edge = parseEdge(edge)
|
||||||
|
|
||||||
if (connectionExists(edge, edges)) return false
|
if (connectionExists(edge, edges)) return false
|
||||||
|
|
||||||
return edge
|
return edge
|
||||||
}
|
}
|
||||||
|
|
||||||
export function updateEdgeAction(edge: GraphEdge, newConnection: Connection, edges: GraphEdge[], shouldReplaceId: boolean) {
|
export function updateEdgeAction(
|
||||||
|
edge: GraphEdge,
|
||||||
|
newConnection: Connection,
|
||||||
|
edges: GraphEdge[],
|
||||||
|
findEdge: Actions['findEdge'],
|
||||||
|
shouldReplaceId: boolean,
|
||||||
|
) {
|
||||||
if (!newConnection.source || !newConnection.target) {
|
if (!newConnection.source || !newConnection.target) {
|
||||||
warn("Can't create new edge. An edge needs a source and a target.")
|
warn("Can't create new edge. An edge needs a source and a target.")
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
const foundEdge = edges.find((e) => isGraphEdge(e) && e.id === edge.id)
|
const foundEdge = findEdge(edge.id)
|
||||||
|
|
||||||
if (!foundEdge) {
|
if (!foundEdge) {
|
||||||
warn(`The old edge with id=${edge.id} does not exist.`)
|
warn(`The old edge with id=${edge.id} does not exist.`)
|
||||||
|
|||||||
Reference in New Issue
Block a user