@@ -7,6 +7,7 @@ import useSWR from "swr";
77import { SpanControls } from "@/components/traces/span-controls" ;
88import SpanContent from "@/components/traces/span-view/span-content" ;
99import { SpanViewStateProvider } from "@/components/traces/span-view/span-view-store" ;
10+ import { TraceViewTrace } from "@/components/traces/trace-view/trace-view-store.tsx" ;
1011import { Alert , AlertDescription , AlertTitle } from "@/components/ui/alert.tsx" ;
1112import CodeHighlighter from "@/components/ui/code-highlighter/index" ;
1213import { Skeleton } from "@/components/ui/skeleton" ;
@@ -17,7 +18,7 @@ import { Tabs, TabsContent, TabsList, TabsTrigger } from "../../ui/tabs";
1718
1819interface SpanViewProps {
1920 spanId : string ;
20- traceId : string ;
21+ trace : TraceViewTrace ;
2122}
2223
2324const swrFetcher = async ( url : string ) => {
@@ -32,15 +33,19 @@ const swrFetcher = async (url: string) => {
3233 return res . json ( ) ;
3334} ;
3435
35- export function SpanView ( { spanId, traceId } : SpanViewProps ) {
36+ export function SpanView ( { spanId, trace } : SpanViewProps ) {
3637 const { projectId } = useParams ( ) ;
38+ const params = new URLSearchParams ( [
39+ [ "startTime" , trace . startTime ] ,
40+ [ "endTime" , trace . endTime ] ,
41+ ] ) ;
3742 const {
3843 data : span ,
3944 isLoading,
4045 error,
41- } = useSWR < Span > ( `/api/projects/${ projectId } /traces/${ traceId } /spans/${ spanId } ` , swrFetcher ) ;
46+ } = useSWR < Span > ( `/api/projects/${ projectId } /traces/${ trace . id } /spans/${ spanId } ? ${ params } ` , swrFetcher ) ;
4247 const { data : events } = useSWR < Event [ ] > (
43- `/api/projects/${ projectId } /traces/${ traceId } /spans/${ spanId } /events` ,
48+ `/api/projects/${ projectId } /traces/${ trace . id } /spans/${ spanId } /events` ,
4449 swrFetcher
4550 ) ;
4651
0 commit comments