refact workflow run
This commit is contained in:
parent
b98dd22491
commit
754baf8d02
@ -8,4 +8,4 @@ export * from './use-workflow-node-iteration-next'
|
|||||||
export * from './use-workflow-node-iteration-finished'
|
export * from './use-workflow-node-iteration-finished'
|
||||||
export * from './use-workflow-node-retry'
|
export * from './use-workflow-node-retry'
|
||||||
export * from './use-workflow-text-chunk'
|
export * from './use-workflow-text-chunk'
|
||||||
export * from './use-workflow-text-replace'
|
export * from './use-workflow-text-replace'
|
||||||
|
@ -18,9 +18,9 @@ export const useWorkflowFailed = () => {
|
|||||||
status: WorkflowRunningStatus.Failed,
|
status: WorkflowRunningStatus.Failed,
|
||||||
}
|
}
|
||||||
}))
|
}))
|
||||||
}, [])
|
}, [workflowStore])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handleWorkflowFailed,
|
handleWorkflowFailed,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -27,9 +27,9 @@ export const useWorkflowFinished = () => {
|
|||||||
draft.resultText = data.outputs[Object.keys(data.outputs)[0]]
|
draft.resultText = data.outputs[Object.keys(data.outputs)[0]]
|
||||||
}
|
}
|
||||||
}))
|
}))
|
||||||
}, [])
|
}, [workflowStore])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handleWorkflowFinished,
|
handleWorkflowFinished,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -145,9 +145,9 @@ export const useWorkflowNodeFinished = () => {
|
|||||||
})
|
})
|
||||||
setEdges(newEdges)
|
setEdges(newEdges)
|
||||||
}
|
}
|
||||||
}, [])
|
}, [workflowStore, store])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handleWorkflowNodeFinished,
|
handleWorkflowNodeFinished,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -12,7 +12,6 @@ export const useWorkflowNodeIterationFinished = () => {
|
|||||||
|
|
||||||
const handleWorkflowNodeIterationFinished = useCallback((params: IterationFinishedResponse) => {
|
const handleWorkflowNodeIterationFinished = useCallback((params: IterationFinishedResponse) => {
|
||||||
const { data } = params
|
const { data } = params
|
||||||
|
|
||||||
const {
|
const {
|
||||||
workflowRunningData,
|
workflowRunningData,
|
||||||
setWorkflowRunningData,
|
setWorkflowRunningData,
|
||||||
@ -23,6 +22,7 @@ export const useWorkflowNodeIterationFinished = () => {
|
|||||||
setNodes,
|
setNodes,
|
||||||
} = store.getState()
|
} = store.getState()
|
||||||
const nodes = getNodes()
|
const nodes = getNodes()
|
||||||
|
|
||||||
setWorkflowRunningData(produce(workflowRunningData!, (draft) => {
|
setWorkflowRunningData(produce(workflowRunningData!, (draft) => {
|
||||||
const tracing = draft.tracing!
|
const tracing = draft.tracing!
|
||||||
const currIterationNode = tracing.find(trace => trace.node_id === data.node_id)
|
const currIterationNode = tracing.find(trace => trace.node_id === data.node_id)
|
||||||
@ -40,9 +40,9 @@ export const useWorkflowNodeIterationFinished = () => {
|
|||||||
currentNode.data._runningStatus = data.status
|
currentNode.data._runningStatus = data.status
|
||||||
})
|
})
|
||||||
setNodes(newNodes)
|
setNodes(newNodes)
|
||||||
}, [])
|
}, [workflowStore, store])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handleWorkflowNodeIterationFinished,
|
handleWorkflowNodeIterationFinished,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -40,9 +40,9 @@ export const useWorkflowNodeIterationNext = () => {
|
|||||||
setIterTimes(iterTimes + 1)
|
setIterTimes(iterTimes + 1)
|
||||||
})
|
})
|
||||||
setNodes(newNodes)
|
setNodes(newNodes)
|
||||||
}, [])
|
}, [workflowStore, store])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handleWorkflowNodeIterationNext,
|
handleWorkflowNodeIterationNext,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { useCallback } from 'react'
|
import { useCallback } from 'react'
|
||||||
import {
|
import {
|
||||||
useReactFlow,
|
useReactFlow,
|
||||||
useStoreApi,
|
useStoreApi,
|
||||||
} from 'reactflow'
|
} from 'reactflow'
|
||||||
@ -79,9 +79,9 @@ export const useWorkflowNodeIterationStarted = () => {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
setEdges(newEdges)
|
setEdges(newEdges)
|
||||||
}, [])
|
}, [workflowStore, store, reactflow])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handleWorkflowNodeIterationStarted,
|
handleWorkflowNodeIterationStarted,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { useCallback } from 'react'
|
import { useCallback } from 'react'
|
||||||
import { useStoreApi } from 'reactflow'
|
import { useStoreApi } from 'reactflow'
|
||||||
import produce from 'immer'
|
import produce from 'immer'
|
||||||
import type {
|
import type {
|
||||||
NodeFinishedResponse,
|
NodeFinishedResponse,
|
||||||
NodeTracing,
|
NodeTracing,
|
||||||
} from '@/types/workflow'
|
} from '@/types/workflow'
|
||||||
@ -90,9 +90,9 @@ export const useWorkflowNodeRetry = () => {
|
|||||||
currentNode.data._retryIndex = data.retry_index
|
currentNode.data._retryIndex = data.retry_index
|
||||||
})
|
})
|
||||||
setNodes(newNodes)
|
setNodes(newNodes)
|
||||||
}, [])
|
}, [workflowStore, store])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handleWorkflowNodeRetry,
|
handleWorkflowNodeRetry,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -113,9 +113,9 @@ export const useWorkflowNodeStarted = () => {
|
|||||||
})
|
})
|
||||||
setEdges(newEdges)
|
setEdges(newEdges)
|
||||||
}
|
}
|
||||||
}, [])
|
}, [workflowStore, store, reactflow])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handleWorkflowNodeStarted,
|
handleWorkflowNodeStarted,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
import {
|
import {
|
||||||
useWorkflowStarted,
|
|
||||||
useWorkflowFinished,
|
|
||||||
useWorkflowFailed,
|
useWorkflowFailed,
|
||||||
useWorkflowNodeStarted,
|
useWorkflowFinished,
|
||||||
useWorkflowNodeFinished,
|
useWorkflowNodeFinished,
|
||||||
useWorkflowNodeIterationStarted,
|
|
||||||
useWorkflowNodeIterationNext,
|
|
||||||
useWorkflowNodeIterationFinished,
|
useWorkflowNodeIterationFinished,
|
||||||
|
useWorkflowNodeIterationNext,
|
||||||
|
useWorkflowNodeIterationStarted,
|
||||||
useWorkflowNodeRetry,
|
useWorkflowNodeRetry,
|
||||||
|
useWorkflowNodeStarted,
|
||||||
|
useWorkflowStarted,
|
||||||
useWorkflowTextChunk,
|
useWorkflowTextChunk,
|
||||||
useWorkflowTextReplace,
|
useWorkflowTextReplace,
|
||||||
} from '.'
|
} from '.'
|
||||||
@ -38,4 +38,4 @@ export const useWorkflowRunEvent = () => {
|
|||||||
handleWorkflowTextChunk,
|
handleWorkflowTextChunk,
|
||||||
handleWorkflowTextReplace,
|
handleWorkflowTextReplace,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -50,9 +50,9 @@ export const useWorkflowStarted = () => {
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
setEdges(newEdges)
|
setEdges(newEdges)
|
||||||
}, [])
|
}, [workflowStore, store])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handleWorkflowStarted,
|
handleWorkflowStarted,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,9 +17,9 @@ export const useWorkflowTextChunk = () => {
|
|||||||
draft.resultTabActive = true
|
draft.resultTabActive = true
|
||||||
draft.resultText += text
|
draft.resultText += text
|
||||||
}))
|
}))
|
||||||
}, [])
|
}, [workflowStore])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handleWorkflowTextChunk,
|
handleWorkflowTextChunk,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -15,9 +15,9 @@ export const useWorkflowTextReplace = () => {
|
|||||||
setWorkflowRunningData(produce(workflowRunningData!, (draft) => {
|
setWorkflowRunningData(produce(workflowRunningData!, (draft) => {
|
||||||
draft.resultText = text
|
draft.resultText = text
|
||||||
}))
|
}))
|
||||||
}, [])
|
}, [workflowStore])
|
||||||
|
|
||||||
return {
|
return {
|
||||||
handleWorkflowTextReplace,
|
handleWorkflowTextReplace,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -242,19 +242,19 @@ export const useWorkflowRun = () => {
|
|||||||
onTextReplace: (params) => {
|
onTextReplace: (params) => {
|
||||||
handleWorkflowTextReplace(params)
|
handleWorkflowTextReplace(params)
|
||||||
},
|
},
|
||||||
onTTSChunk: (messageId: string, audio: string, audioType?: string) => {
|
onTTSChunk: (messageId: string, audio: string) => {
|
||||||
if (!audio || audio === '')
|
if (!audio || audio === '')
|
||||||
return
|
return
|
||||||
player.playAudioWithAudio(audio, true)
|
player.playAudioWithAudio(audio, true)
|
||||||
AudioPlayerManager.getInstance().resetMsgId(messageId)
|
AudioPlayerManager.getInstance().resetMsgId(messageId)
|
||||||
},
|
},
|
||||||
onTTSEnd: (messageId: string, audio: string, audioType?: string) => {
|
onTTSEnd: (messageId: string, audio: string) => {
|
||||||
player.playAudioWithAudio(audio, false)
|
player.playAudioWithAudio(audio, false)
|
||||||
},
|
},
|
||||||
...restCallback,
|
...restCallback,
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
}, [store, reactflow, workflowStore, doSyncWorkflowDraft])
|
}, [store, workflowStore, doSyncWorkflowDraft, handleWorkflowStarted, handleWorkflowFinished, handleWorkflowFailed, handleWorkflowNodeStarted, handleWorkflowNodeFinished, handleWorkflowNodeIterationStarted, handleWorkflowNodeIterationNext, handleWorkflowNodeIterationFinished, handleWorkflowNodeRetry, handleWorkflowTextChunk, handleWorkflowTextReplace, pathname])
|
||||||
|
|
||||||
const handleStopRun = useCallback((taskId: string) => {
|
const handleStopRun = useCallback((taskId: string) => {
|
||||||
const appId = useAppStore.getState().appDetail?.id
|
const appId = useAppStore.getState().appDetail?.id
|
||||||
|
Loading…
Reference in New Issue
Block a user