Showing
5 changed files
with
12 additions
and
8 deletions
| ... | ... | @@ -128,7 +128,7 @@ export function useBasicDataTransform() { |
| 128 | 128 | description, |
| 129 | 129 | name, |
| 130 | 130 | }, |
| 131 | - created: !!id?.id, | |
| 131 | + created: !id?.id, | |
| 132 | 132 | }, |
| 133 | 133 | { |
| 134 | 134 | id: id?.id || buildUUID(), |
| ... | ... | @@ -220,7 +220,7 @@ export function useBasicDataTransform() { |
| 220 | 220 | |
| 221 | 221 | const resultNode = Object.assign( |
| 222 | 222 | mergeData(data, nodeData, node), |
| 223 | - nodeData.created && !removeId | |
| 223 | + !nodeData.created || !removeId | |
| 224 | 224 | ? ({ |
| 225 | 225 | id: { id: node.id, entityType: RuleChainEntityType.RULE_NODE }, |
| 226 | 226 | } as BasicNodeBindData) | ... | ... |
| ... | ... | @@ -36,7 +36,7 @@ export function useDragCreate(options: UseDragCreateOptionsType) { |
| 36 | 36 | y: event.clientY - flowBounds.top - offsetY, |
| 37 | 37 | }); |
| 38 | 38 | |
| 39 | - const newNode = getAddNodesParams(position, { ...toRaw(unref(nodeData)), data }); | |
| 39 | + const newNode = getAddNodesParams(position, { ...toRaw(unref(nodeData)), data, created: true }); | |
| 40 | 40 | addNodes(newNode); |
| 41 | 41 | |
| 42 | 42 | triggerChange(); | ... | ... |
| ... | ... | @@ -50,10 +50,11 @@ export function useSaveAndRedo() { |
| 50 | 50 | |
| 51 | 51 | const { connections, nodes, firstNodeIndex } = combineData( |
| 52 | 52 | flowActionType.getNodes, |
| 53 | - flowActionType.getEdges | |
| 53 | + flowActionType.getEdges, | |
| 54 | + true | |
| 54 | 55 | ); |
| 55 | 56 | |
| 56 | - handleSaveRuleChain(connections, nodes, firstNodeIndex); | |
| 57 | + handleSaveRuleChain(connections, nodes, firstNodeIndex, flowActionType); | |
| 57 | 58 | }; |
| 58 | 59 | |
| 59 | 60 | const handleRedoChange = (flowActionType: VueFlowStore) => { |
| ... | ... | @@ -71,7 +72,8 @@ export function useSaveAndRedo() { |
| 71 | 72 | async function handleSaveRuleChain( |
| 72 | 73 | connections: ConnectionItemType[], |
| 73 | 74 | nodes: BasicNodeBindData[], |
| 74 | - firstNodeIndex?: number | |
| 75 | + firstNodeIndex: number | undefined = undefined, | |
| 76 | + flowActionType: VueFlowStore | |
| 75 | 77 | ) { |
| 76 | 78 | try { |
| 77 | 79 | loading.value = true; |
| ... | ... | @@ -93,7 +95,8 @@ export function useSaveAndRedo() { |
| 93 | 95 | }, |
| 94 | 96 | }); |
| 95 | 97 | |
| 96 | - parseRuleChain(data); | |
| 98 | + const elements = parseRuleChain(data); | |
| 99 | + flowActionType.setElements(elements); | |
| 97 | 100 | |
| 98 | 101 | resetChange(); |
| 99 | 102 | ... | ... |
| ... | ... | @@ -3,6 +3,7 @@ |
| 3 | 3 | import { Spin } from 'ant-design-vue'; |
| 4 | 4 | import { NodeItemConfigType } from '../../../types/node'; |
| 5 | 5 | import { fetchNodeExtraContent } from '../../../packages'; |
| 6 | + import { NodeProps } from '@vue-flow/core'; | |
| 6 | 7 | |
| 7 | 8 | const props = defineProps<{ |
| 8 | 9 | config?: NodeItemConfigType; | ... | ... |