'use client'; import type { Event, Hook, Step, WorkflowRun } from '@workflow/world'; import { AlertCircle } from 'lucide-react'; import type { SpanSelectionInfo } from './sidebar/entity-detail-panel'; import { WorkflowTraceViewer } from './workflow-trace-view'; interface RunTraceViewProps { run: WorkflowRun; events: Event[]; isLoading?: boolean; error?: Error | null; spanDetailData?: WorkflowRun | Step | Hook | Event | null; spanDetailLoading?: boolean; spanDetailError?: Error | null; onWakeUpSleep?: ( runId: string, correlationId: string ) => Promise<{ stoppedCount: number }>; onResolveHook?: ( hookToken: string, payload: unknown, hook?: Hook ) => Promise; onCancelRun?: (runId: string) => Promise; onStreamClick?: (streamId: string) => void; onSpanSelect?: (info: SpanSelectionInfo) => void; onLoadMoreSpans?: () => void | Promise; hasMoreSpans?: boolean; isLoadingMoreSpans?: boolean; } export function RunTraceView({ run, events, isLoading, error, spanDetailData, spanDetailLoading, spanDetailError, onWakeUpSleep, onResolveHook, onCancelRun, onStreamClick, onSpanSelect, onLoadMoreSpans, hasMoreSpans, isLoadingMoreSpans, }: RunTraceViewProps) { if (error && !run) { return (

Error loading workflow run

{error.message}

); } return (
); }