import { useMemo } from 'react'; import { DataFrame, SplitOpen } from '@grafana/data'; import { PanelChrome } from '@grafana/ui'; import { StoreState, useSelector } from 'app/types'; import { TraceView } from './TraceView'; import { transformDataFrames } from './utils/transform'; interface Props { dataFrames: DataFrame[]; splitOpenFn: SplitOpen; exploreId: string; scrollElement?: Element; } export function TraceViewContainer(props: Props) { // At this point we only show single trace const frame = props.dataFrames[0]; const { dataFrames, splitOpenFn, exploreId, scrollElement } = props; const traceProp = useMemo(() => transformDataFrames(frame), [frame]); const datasource = useSelector( (state: StoreState) => state.explore.panes[props.exploreId]?.datasourceInstance ?? undefined ); if (!traceProp) { return null; } return ( ); }