mirror of
				https://github.com/langgenius/dify.git
				synced 2025-11-03 20:33:00 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			99 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			99 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import { RetryResultPanel } from './retry-log'
 | 
						|
import { IterationResultPanel } from './iteration-log'
 | 
						|
import { LoopResultPanel } from './loop-log'
 | 
						|
import { AgentResultPanel } from './agent-log'
 | 
						|
import type {
 | 
						|
  AgentLogItemWithChildren,
 | 
						|
  IterationDurationMap,
 | 
						|
  LoopDurationMap,
 | 
						|
  LoopVariableMap,
 | 
						|
  NodeTracing,
 | 
						|
} from '@/types/workflow'
 | 
						|
 | 
						|
export type SpecialResultPanelProps = {
 | 
						|
  showRetryDetail?: boolean
 | 
						|
  setShowRetryDetailFalse?: () => void
 | 
						|
  retryResultList?: NodeTracing[]
 | 
						|
 | 
						|
  showIteratingDetail?: boolean
 | 
						|
  setShowIteratingDetailFalse?: () => void
 | 
						|
  iterationResultList?: NodeTracing[][]
 | 
						|
  iterationResultDurationMap?: IterationDurationMap
 | 
						|
 | 
						|
  showLoopingDetail?: boolean
 | 
						|
  setShowLoopingDetailFalse?: () => void
 | 
						|
  loopResultList?: NodeTracing[][]
 | 
						|
  loopResultDurationMap?: LoopDurationMap
 | 
						|
  loopResultVariableMap?: LoopVariableMap
 | 
						|
 | 
						|
  agentOrToolLogItemStack?: AgentLogItemWithChildren[]
 | 
						|
  agentOrToolLogListMap?: Record<string, AgentLogItemWithChildren[]>
 | 
						|
  handleShowAgentOrToolLog?: (detail?: AgentLogItemWithChildren) => void
 | 
						|
}
 | 
						|
const SpecialResultPanel = ({
 | 
						|
  showRetryDetail,
 | 
						|
  setShowRetryDetailFalse,
 | 
						|
  retryResultList,
 | 
						|
 | 
						|
  showIteratingDetail,
 | 
						|
  setShowIteratingDetailFalse,
 | 
						|
  iterationResultList,
 | 
						|
  iterationResultDurationMap,
 | 
						|
 | 
						|
  showLoopingDetail,
 | 
						|
  setShowLoopingDetailFalse,
 | 
						|
  loopResultList,
 | 
						|
  loopResultDurationMap,
 | 
						|
  loopResultVariableMap,
 | 
						|
 | 
						|
  agentOrToolLogItemStack,
 | 
						|
  agentOrToolLogListMap,
 | 
						|
  handleShowAgentOrToolLog,
 | 
						|
}: SpecialResultPanelProps) => {
 | 
						|
  return (
 | 
						|
    <div onClick={(e) => {
 | 
						|
      e.stopPropagation()
 | 
						|
      e.nativeEvent.stopImmediatePropagation()
 | 
						|
    }}>
 | 
						|
      {
 | 
						|
        !!showRetryDetail && !!retryResultList?.length && setShowRetryDetailFalse && (
 | 
						|
          <RetryResultPanel
 | 
						|
            list={retryResultList}
 | 
						|
            onBack={setShowRetryDetailFalse}
 | 
						|
          />
 | 
						|
        )
 | 
						|
      }
 | 
						|
      {
 | 
						|
        showIteratingDetail && !!iterationResultList?.length && setShowIteratingDetailFalse && (
 | 
						|
          <IterationResultPanel
 | 
						|
            list={iterationResultList}
 | 
						|
            onBack={setShowIteratingDetailFalse}
 | 
						|
            iterDurationMap={iterationResultDurationMap}
 | 
						|
          />
 | 
						|
        )
 | 
						|
      }
 | 
						|
      {
 | 
						|
        showLoopingDetail && !!loopResultList?.length && setShowLoopingDetailFalse && (
 | 
						|
          <LoopResultPanel
 | 
						|
            list={loopResultList}
 | 
						|
            onBack={setShowLoopingDetailFalse}
 | 
						|
            loopDurationMap={loopResultDurationMap}
 | 
						|
            loopVariableMap={loopResultVariableMap}
 | 
						|
          />
 | 
						|
        )
 | 
						|
      }
 | 
						|
      {
 | 
						|
        !!agentOrToolLogItemStack?.length && agentOrToolLogListMap && handleShowAgentOrToolLog && (
 | 
						|
          <AgentResultPanel
 | 
						|
            agentOrToolLogItemStack={agentOrToolLogItemStack}
 | 
						|
            agentOrToolLogListMap={agentOrToolLogListMap}
 | 
						|
            onShowAgentOrToolLog={handleShowAgentOrToolLog}
 | 
						|
          />
 | 
						|
        )
 | 
						|
      }
 | 
						|
    </div>
 | 
						|
  )
 | 
						|
}
 | 
						|
 | 
						|
export default SpecialResultPanel
 |