diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/index.ts b/web/app/components/workflow/hooks/use-workflow-run-event/index.ts index 6c83e24994..61216017e0 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/index.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/index.ts @@ -8,4 +8,4 @@ export * from './use-workflow-node-iteration-next' export * from './use-workflow-node-iteration-finished' export * from './use-workflow-node-retry' export * from './use-workflow-text-chunk' -export * from './use-workflow-text-replace' \ No newline at end of file +export * from './use-workflow-text-replace' diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-failed.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-failed.ts index 14ee69447a..733f0152a6 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-failed.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-failed.ts @@ -18,9 +18,9 @@ export const useWorkflowFailed = () => { status: WorkflowRunningStatus.Failed, } })) - }, []) + }, [workflowStore]) return { handleWorkflowFailed, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-finished.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-finished.ts index 25364a041f..f447031047 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-finished.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-finished.ts @@ -27,9 +27,9 @@ export const useWorkflowFinished = () => { draft.resultText = data.outputs[Object.keys(data.outputs)[0]] } })) - }, []) + }, [workflowStore]) return { handleWorkflowFinished, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-finished.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-finished.ts index 82da4af499..1a39360d9a 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-finished.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-finished.ts @@ -145,9 +145,9 @@ export const useWorkflowNodeFinished = () => { }) setEdges(newEdges) } - }, []) + }, [workflowStore, store]) return { handleWorkflowNodeFinished, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-finished.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-finished.ts index d969662de3..2394df7516 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-finished.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-finished.ts @@ -12,7 +12,6 @@ export const useWorkflowNodeIterationFinished = () => { const handleWorkflowNodeIterationFinished = useCallback((params: IterationFinishedResponse) => { const { data } = params - const { workflowRunningData, setWorkflowRunningData, @@ -23,6 +22,7 @@ export const useWorkflowNodeIterationFinished = () => { setNodes, } = store.getState() const nodes = getNodes() + setWorkflowRunningData(produce(workflowRunningData!, (draft) => { const tracing = draft.tracing! const currIterationNode = tracing.find(trace => trace.node_id === data.node_id) @@ -40,9 +40,9 @@ export const useWorkflowNodeIterationFinished = () => { currentNode.data._runningStatus = data.status }) setNodes(newNodes) - }, []) + }, [workflowStore, store]) return { handleWorkflowNodeIterationFinished, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-next.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-next.ts index 305b376417..537ff63e09 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-next.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-next.ts @@ -40,9 +40,9 @@ export const useWorkflowNodeIterationNext = () => { setIterTimes(iterTimes + 1) }) setNodes(newNodes) - }, []) + }, [workflowStore, store]) return { handleWorkflowNodeIterationNext, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-started.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-started.ts index cf381ba0bf..9d6536ccc9 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-started.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-iteration-started.ts @@ -1,5 +1,5 @@ import { useCallback } from 'react' -import { +import { useReactFlow, useStoreApi, } from 'reactflow' @@ -79,9 +79,9 @@ export const useWorkflowNodeIterationStarted = () => { }) }) setEdges(newEdges) - }, []) + }, [workflowStore, store, reactflow]) return { handleWorkflowNodeIterationStarted, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-retry.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-retry.ts index e391a1e47c..0061920eb4 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-retry.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-retry.ts @@ -1,7 +1,7 @@ import { useCallback } from 'react' import { useStoreApi } from 'reactflow' import produce from 'immer' -import type { +import type { NodeFinishedResponse, NodeTracing, } from '@/types/workflow' @@ -90,9 +90,9 @@ export const useWorkflowNodeRetry = () => { currentNode.data._retryIndex = data.retry_index }) setNodes(newNodes) - }, []) + }, [workflowStore, store]) return { handleWorkflowNodeRetry, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-started.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-started.ts index 833425a0be..446d942274 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-started.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-node-started.ts @@ -113,9 +113,9 @@ export const useWorkflowNodeStarted = () => { }) setEdges(newEdges) } - }, []) + }, [workflowStore, store, reactflow]) return { handleWorkflowNodeStarted, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-run-event.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-run-event.ts index cc9433ea0e..82b76da22d 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-run-event.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-run-event.ts @@ -1,13 +1,13 @@ -import { - useWorkflowStarted, - useWorkflowFinished, +import { useWorkflowFailed, - useWorkflowNodeStarted, + useWorkflowFinished, useWorkflowNodeFinished, - useWorkflowNodeIterationStarted, - useWorkflowNodeIterationNext, useWorkflowNodeIterationFinished, + useWorkflowNodeIterationNext, + useWorkflowNodeIterationStarted, useWorkflowNodeRetry, + useWorkflowNodeStarted, + useWorkflowStarted, useWorkflowTextChunk, useWorkflowTextReplace, } from '.' @@ -38,4 +38,4 @@ export const useWorkflowRunEvent = () => { handleWorkflowTextChunk, handleWorkflowTextReplace, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-started.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-started.ts index d080a89e76..f9911313cc 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-started.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-started.ts @@ -50,9 +50,9 @@ export const useWorkflowStarted = () => { }) }) setEdges(newEdges) - }, []) + }, [workflowStore, store]) return { handleWorkflowStarted, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-text-chunk.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-text-chunk.ts index 2d9c8ce93d..c086e57697 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-text-chunk.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-text-chunk.ts @@ -17,9 +17,9 @@ export const useWorkflowTextChunk = () => { draft.resultTabActive = true draft.resultText += text })) - }, []) + }, [workflowStore]) return { handleWorkflowTextChunk, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-text-replace.ts b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-text-replace.ts index 2fab8cc5ee..a00530932d 100644 --- a/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-text-replace.ts +++ b/web/app/components/workflow/hooks/use-workflow-run-event/use-workflow-text-replace.ts @@ -15,9 +15,9 @@ export const useWorkflowTextReplace = () => { setWorkflowRunningData(produce(workflowRunningData!, (draft) => { draft.resultText = text })) - }, []) + }, [workflowStore]) return { handleWorkflowTextReplace, } -} \ No newline at end of file +} diff --git a/web/app/components/workflow/hooks/use-workflow-run.ts b/web/app/components/workflow/hooks/use-workflow-run.ts index 270f7ada72..b24e8fde84 100644 --- a/web/app/components/workflow/hooks/use-workflow-run.ts +++ b/web/app/components/workflow/hooks/use-workflow-run.ts @@ -242,19 +242,19 @@ export const useWorkflowRun = () => { onTextReplace: (params) => { handleWorkflowTextReplace(params) }, - onTTSChunk: (messageId: string, audio: string, audioType?: string) => { + onTTSChunk: (messageId: string, audio: string) => { if (!audio || audio === '') return player.playAudioWithAudio(audio, true) AudioPlayerManager.getInstance().resetMsgId(messageId) }, - onTTSEnd: (messageId: string, audio: string, audioType?: string) => { + onTTSEnd: (messageId: string, audio: string) => { player.playAudioWithAudio(audio, false) }, ...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 appId = useAppStore.getState().appDetail?.id