/usr/share/grafana/public/app/features/explore/TraceView
import { useCallback, useState } from 'react'; import { ViewRange, ViewRangeTimeUpdate } from './components/TraceTimelineViewer/types'; /** * Controls state of the zoom function that can be used through minimap in header or on the timeline. ViewRange contains * state not only for current range that is showing but range that is currently being selected by the user. */ export function useViewRange() { const [viewRange, setViewRange] = useState<ViewRange>({ time: { current: [0, 1], }, }); const updateNextViewRangeTime = useCallback(function updateNextViewRangeTime(update: ViewRangeTimeUpdate) { setViewRange((prevRange): ViewRange => { const time = { ...prevRange.time, ...update }; return { ...prevRange, time }; }); }, []); const updateViewRangeTime = useCallback(function updateViewRangeTime(start: number, end: number) { const current: [number, number] = [start, end]; const time = { current }; setViewRange((prevRange): ViewRange => { return { ...prevRange, time }; }); }, []); return { viewRange, updateViewRangeTime, updateNextViewRangeTime }; }
.
Edit
..
Edit
TraceView.test.tsx
Edit
TraceView.tsx
Edit
TraceViewContainer.test.tsx
Edit
TraceViewContainer.tsx
Edit
components
Edit
createSpanLink.test.ts
Edit
createSpanLink.tsx
Edit
custom.d.ts
Edit
useChildrenState.test.ts
Edit
useChildrenState.ts
Edit
useDetailState.test.ts
Edit
useDetailState.ts
Edit
useHoverIndentGuide.test.ts
Edit
useHoverIndentGuide.ts
Edit
useSearch.test.ts
Edit
useSearch.ts
Edit
useViewRange.test.ts
Edit
useViewRange.ts
Edit
utils
Edit