From 93b6749920bdd266379dabd030dee67d86586b34 Mon Sep 17 00:00:00 2001 From: Kolesnyk Anton <50579516+KolesnikAntony@users.noreply.github.com> Date: Sat, 11 Feb 2023 05:09:34 +0200 Subject: [PATCH] fix: filters applied in the logs page (#2210) * fix: filters applied in the logs page * fix: remove console * fix: adding of query params from query string to input * fix: added parser * chore: useSearch parser is updated with previous hooks --------- Co-authored-by: palashgdev --- .../container/LogsSearchFilter/useSearchParser.ts | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/frontend/src/container/LogsSearchFilter/useSearchParser.ts b/frontend/src/container/LogsSearchFilter/useSearchParser.ts index d2ad16d1bb..11b501400f 100644 --- a/frontend/src/container/LogsSearchFilter/useSearchParser.ts +++ b/frontend/src/container/LogsSearchFilter/useSearchParser.ts @@ -1,9 +1,10 @@ import { getMinMax } from 'container/TopNav/AutoRefresh/config'; +import useUrlQuery from 'hooks/useUrlQuery'; import history from 'lib/history'; import { parseQuery, reverseParser } from 'lib/logql'; import { ILogQLParsedQueryItem } from 'lib/logql/types'; import isEqual from 'lodash-es/isEqual'; -import { useCallback, useEffect } from 'react'; +import { useCallback, useEffect, useMemo } from 'react'; import { useDispatch, useSelector } from 'react-redux'; import { Dispatch } from 'redux'; import { AppState } from 'store/reducers'; @@ -27,6 +28,10 @@ export function useSearchParser(): { const { searchFilter: { parsedQuery, queryString }, } = useSelector((store) => store.logs); + + const urlQuery = useUrlQuery(); + const parsedFilters = useMemo(() => urlQuery.get('q'), [urlQuery]); + const { minTime, maxTime, selectedTime } = useSelector< AppState, GlobalReducer @@ -63,8 +68,12 @@ export function useSearchParser(): { ); useEffect(() => { - updateQueryString(queryString); - }, [queryString, updateQueryString]); + if (!queryString && parsedFilters) { + updateQueryString(parsedFilters); + } else if (queryString) { + updateQueryString(queryString); + } + }, [queryString, updateQueryString, parsedFilters]); const updateParsedQuery = useCallback( (updatedParsedPayload: ILogQLParsedQueryItem[]) => {