Skip to content

Commit 8fff21e

Browse files
committed
feat: 迭代开发
1 parent 8b0cb62 commit 8fff21e

3 files changed

Lines changed: 23 additions & 3 deletions

File tree

packages/x-flow/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@xrenders/xflow",
3-
"version": "1.0.4-beta.1",
3+
"version": "1.0.4-beta.2",
44
"description": "一款功能强大、易用灵活的流程编辑器框架,帮助你轻松构建复杂的工作流和流程产品",
55
"keywords": [
66
"xflow"

packages/x-flow/src/hooks/useFlow.ts

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,27 +25,45 @@ export const useFlow = () => {
2525
setCenter,
2626
fitBounds,
2727
toObject,
28-
getNodes,
28+
getNodes: _getNodes,
2929
getEdges,
3030
screenToFlowPosition,
3131
flowToScreenPosition
3232
} = useReactFlow();
33+
3334
const { record } = useTemporalStore();
3435

36+
const getNodes = useMemoizedFn(() => {
37+
const nodes = _getNodes();
38+
const result = nodes.map(item => {
39+
const { data, ...rest } = item;
40+
const { _nodeType, ...restData } = data;
41+
return {
42+
...rest,
43+
data: restData
44+
}
45+
});
46+
return result;
47+
});
48+
3549
const setNodes = useMemoizedFn((nodes: FlowNode[], isTransform = false) => {
3650
storeApi.getState().setNodes(nodes, isTransform);
3751
});
52+
3853
const addNodes = useMemoizedFn((nodes: FlowNode[], isTransform = false) => {
3954
record(() => {
4055
storeApi.getState().addNodes(nodes, isTransform);
4156
})
4257
});
58+
4359
const setEdges = useMemoizedFn((edges: Edge[]) => {
4460
storeApi.getState().setEdges(edges);
4561
});
62+
4663
const addEdges = useMemoizedFn((edges: Edge[]) => {
4764
storeApi.getState().addEdges(edges);
4865
});
66+
4967
const copyNode = useMemoizedFn((nodeId) => {
5068
const copyNodes = generateCopyNodes(
5169
storeApi.getState().nodes.find((node) => node.id === nodeId),
@@ -54,6 +72,7 @@ export const useFlow = () => {
5472
copyNodes,
5573
});
5674
});
75+
5776
const pasteNode = useMemoizedFn((nodeId: string, data: any) => {
5877
if (storeApi.getState().copyNodes.length > 0) {
5978
const newEdges = {
@@ -73,6 +92,7 @@ export const useFlow = () => {
7392
message.warning('请先复制节点!')
7493
}
7594
});
95+
7696
const deleteNode = useMemoizedFn((nodeId) => {
7797
record(() => {
7898
storeApi.setState({

packages/x-flow/src/models/store.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ const createStore = (initProps?: Partial<FlowProps>) => {
101101
set({ edges });
102102
},
103103
getEdges: () => {
104-
return get().nodes;
104+
return get().edges;
105105
},
106106
addNodes: (payload, isTransform = true) => {
107107
const newNodes = get().nodes.concat(isTransform ? transformNodes(Array.isArray(payload) ? payload : [payload]) : payload);

0 commit comments

Comments
 (0)