| 
                        1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 | 
                        - import { useCallback } from 'react'
 - import produce from 'immer'
 - import { useStoreApi } from 'reactflow'
 - import { NodeRunningStatus } from '../types'
 - 
 - export const useNodesInteractionsWithoutSync = () => {
 -   const store = useStoreApi()
 - 
 -   const handleNodeCancelRunningStatus = useCallback(() => {
 -     const {
 -       getNodes,
 -       setNodes,
 -     } = store.getState()
 - 
 -     const nodes = getNodes()
 -     const newNodes = produce(nodes, (draft) => {
 -       draft.forEach((node) => {
 -         node.data._runningStatus = undefined
 -         node.data._waitingRun = false
 -       })
 -     })
 -     setNodes(newNodes)
 -   }, [store])
 - 
 -   const handleCancelAllNodeSuccessStatus = useCallback(() => {
 -     const {
 -       getNodes,
 -       setNodes,
 -     } = store.getState()
 - 
 -     const nodes = getNodes()
 -     const newNodes = produce(nodes, (draft) => {
 -       draft.forEach((node) => {
 -         if(node.data._runningStatus === NodeRunningStatus.Succeeded)
 -           node.data._runningStatus = undefined
 -       })
 -     })
 -     setNodes(newNodes)
 -   }, [store])
 - 
 -   const handleCancelNodeSuccessStatus = useCallback((nodeId: string) => {
 -     const {
 -       getNodes,
 -       setNodes,
 -     } = store.getState()
 - 
 -     const newNodes = produce(getNodes(), (draft) => {
 -       const node = draft.find(n => n.id === nodeId)
 -       if (node && node.data._runningStatus === NodeRunningStatus.Succeeded) {
 -         node.data._runningStatus = undefined
 -         node.data._waitingRun = false
 -       }
 -     })
 -     setNodes(newNodes)
 -   }, [store])
 - 
 -   return {
 -     handleNodeCancelRunningStatus,
 -     handleCancelAllNodeSuccessStatus,
 -     handleCancelNodeSuccessStatus,
 -   }
 - }
 
 
  |