diff --git a/web/app/components/workflow/hooks/use-workflow-run.ts b/web/app/components/workflow/hooks/use-workflow-run.ts index 5bea2ca6ad..b9c6e0b8d8 100644 --- a/web/app/components/workflow/hooks/use-workflow-run.ts +++ b/web/app/components/workflow/hooks/use-workflow-run.ts @@ -202,7 +202,10 @@ export const useWorkflowRun = () => { setWorkflowRunningData, } = workflowStore.getState() setWorkflowRunningData(produce(workflowRunningData!, (draft) => { - draft.tracing!.push(data as any) + draft.tracing!.push({ + ...data, + status: 'running', + } as any) })) const nodes = getNodes() diff --git a/web/app/components/workflow/panel/run-history.tsx b/web/app/components/workflow/panel/run-history.tsx index fef090fd0a..85f2fd62c0 100644 --- a/web/app/components/workflow/panel/run-history.tsx +++ b/web/app/components/workflow/panel/run-history.tsx @@ -9,7 +9,7 @@ import { useWorkflowRun, } from '../hooks' import { CheckCircle, XClose } from '@/app/components/base/icons/src/vender/line/general' -import { AlertCircle } from '@/app/components/base/icons/src/vender/line/alertsAndFeedback' +import { AlertCircle, AlertTriangle } from '@/app/components/base/icons/src/vender/line/alertsAndFeedback' import { useStore, useWorkflowStore, @@ -77,9 +77,14 @@ const RunHistory = () => { handleBackupDraft() }} > + { + !isChatMode && item.status === WorkflowRunningStatus.Stopped && ( + + ) + } { !isChatMode && item.status === WorkflowRunningStatus.Failed && ( - + ) } { diff --git a/web/app/components/workflow/panel/workflow-preview.tsx b/web/app/components/workflow/panel/workflow-preview.tsx index 6b5c887b75..f74be9550b 100644 --- a/web/app/components/workflow/panel/workflow-preview.tsx +++ b/web/app/components/workflow/panel/workflow-preview.tsx @@ -7,6 +7,7 @@ import { useTranslation } from 'react-i18next' import ResultPanel from '../run/result-panel' import TracingPanel from '../run/tracing-panel' import { useStore } from '../store' +import Loading from '@/app/components/base/loading' const WorkflowPreview = () => { const { t } = useTranslation() @@ -22,9 +23,9 @@ const WorkflowPreview = () => { flex flex-col w-[420px] h-full rounded-2xl border-[0.5px] border-gray-200 shadow-xl bg-white `}>
- Test Run#${workflowRunningData?.result.sequence_number} + Test Run#{workflowRunningData?.result.sequence_number}
-
+
{ onClick={() => switchTab('TRACING')} >{t('runLog.tracing')}
- {currentTab === 'RESULT' && ( - - )} - {currentTab === 'TRACING' && ( - - )} +
+ {currentTab === 'RESULT' && ( + + )} + {currentTab === 'RESULT' && !workflowRunningData?.result && ( +
+ +
+ )} + {currentTab === 'TRACING' && ( + + )} + {currentTab === 'TRACING' && !workflowRunningData?.tracing?.length && ( +
+ +
+ )} +
) diff --git a/web/app/components/workflow/run/index.tsx b/web/app/components/workflow/run/index.tsx index 4ab6a9dbbc..180d5f880a 100644 --- a/web/app/components/workflow/run/index.tsx +++ b/web/app/components/workflow/run/index.tsx @@ -106,7 +106,7 @@ const RunPanel: FC = ({ activeTab = 'RESULT', runID }) => { >{t('runLog.tracing')} {/* panel detal */} -
+
{loading && (
diff --git a/web/app/components/workflow/run/node.tsx b/web/app/components/workflow/run/node.tsx index 63c03067a2..076242ce8b 100644 --- a/web/app/components/workflow/run/node.tsx +++ b/web/app/components/workflow/run/node.tsx @@ -69,7 +69,7 @@ const NodePanel: FC = ({ nodeInfo, collapsed = true, className }) => { )} {nodeInfo.status === 'running' && ( -
+
Running