Skip to content

Commit 4a93697

Browse files
authored
fix: centralize the getter for the query needed by adaptive zoom (#5484)
1 parent 1ba59d9 commit 4a93697

File tree

2 files changed

+30
-2
lines changed

2 files changed

+30
-2
lines changed

src/visualization/types/Graph/view.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ import {useAxisTicksGenerator} from 'src/visualization/utils/useAxisTicksGenerat
4545
import {getFormatter} from 'src/visualization/utils/getFormatter'
4646
import {useLegendOpacity} from 'src/visualization/utils/useLegendOpacity'
4747
import {useStaticLegend} from 'src/visualization/utils/useStaticLegend'
48+
import {useZoomQuery} from 'src/visualization/utils/useZoomQuery'
4849
import {
4950
useVisXDomainSettings,
5051
useVisYDomainSettings,
@@ -181,13 +182,14 @@ const XYPlot: FC<Props> = ({
181182
return useVisYDomainSettings(storedDomain, memoizedYColumnData)
182183
}
183184

185+
const zoomQuery = useZoomQuery(properties)
184186
if (isFlagEnabled('zoomRequery')) {
185187
useXDomainSettings = ({storedDomain, parsedResult, timeRange}) =>
186188
useZoomRequeryXDomainSettings({
187189
data: parsedResult.table.getColumn(xColumn, 'number'),
188190
parsedResult,
189191
preZoomResult,
190-
query: properties?.queries?.[0]?.text ?? '',
192+
query: zoomQuery,
191193
setPreZoomResult,
192194
setRequeryStatus,
193195
setResult: setResultState,
@@ -199,7 +201,7 @@ const XYPlot: FC<Props> = ({
199201
data: memoizedYColumnData,
200202
parsedResult,
201203
preZoomResult,
202-
query: properties?.queries?.[0]?.text ?? '',
204+
query: zoomQuery,
203205
setPreZoomResult,
204206
setRequeryStatus,
205207
setResult: setResultState,
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
// Libraries
2+
import {useContext} from 'react'
3+
4+
// Context
5+
import {PipeContext} from 'src/flows/context/pipe'
6+
import {FlowQueryContext} from 'src/flows/context/flow.query'
7+
import {PersistanceContext} from 'src/dataExplorer/context/persistance'
8+
9+
export const useZoomQuery = (properties): string => {
10+
const {query} = useContext(PersistanceContext)
11+
const {id} = useContext(PipeContext)
12+
const {getPanelQueries} = useContext(FlowQueryContext)
13+
const queryTextFromProperties = properties?.queries?.[0]?.text ?? ''
14+
15+
let zoomQuery = ''
16+
17+
if (id) {
18+
zoomQuery = getPanelQueries(id)?.visual ?? ''
19+
} else if (queryTextFromProperties) {
20+
zoomQuery = queryTextFromProperties
21+
} else {
22+
zoomQuery = query
23+
}
24+
25+
return zoomQuery
26+
}

0 commit comments

Comments
 (0)