fix the explore page history once return from entity details page (#8965)

Co-authored-by: Shailesh Parmar <shailesh.parmar.webdev@gmail.com>
This commit is contained in:
Ashish Gupta 2022-11-23 15:31:33 +05:30 committed by GitHub
parent 8789bdb847
commit ee6d1bf5a6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 30 additions and 19 deletions

View File

@ -236,23 +236,50 @@ const Explore: React.FC<ExploreProps> = ({
setEntityDetails(source); setEntityDetails(source);
}; };
const handleAdvanceSearchFilter = (data: ExploreQuickFilterField[]) => {
const term = {} as Record<string, unknown>;
data.forEach((filter) => {
if (filter.key) {
term[filter.key] = filter.value;
}
});
onChangeAdvancedSearchQueryFilter(
isEmpty(term)
? undefined
: {
query: { bool: { must: [{ term }] } },
}
);
};
const handleAdvanceFieldClear = () => { const handleAdvanceFieldClear = () => {
setSelectedQuickFilters([]); setSelectedQuickFilters([]);
}; };
const handleAdvanceFieldRemove = (value: string) => { const handleAdvanceFieldRemove = (value: string) => {
setSelectedQuickFilters((prev) => prev.filter((p) => p.key !== value)); setSelectedQuickFilters((prev) => {
const data = prev.filter((p) => p.key !== value);
handleAdvanceSearchFilter(data);
return data;
});
}; };
const handleAdvanceFieldValueSelect = (field: ExploreQuickFilterField) => { const handleAdvanceFieldValueSelect = (field: ExploreQuickFilterField) => {
setSelectedQuickFilters((pre) => { setSelectedQuickFilters((pre) => {
return pre.map((preField) => { const data = pre.map((preField) => {
if (preField.key === field.key) { if (preField.key === field.key) {
return field; return field;
} else { } else {
return preField; return preField;
} }
}); });
handleAdvanceSearchFilter(data);
return data;
}); });
}; };
@ -279,23 +306,6 @@ const Explore: React.FC<ExploreProps> = ({
}; };
}, []); }, []);
useEffect(() => {
const term = {} as Record<string, unknown>;
selectedQuickFilters.map((filter) => {
if (filter.key) {
term[filter.key] = filter.value;
}
});
onChangeAdvancedSearchQueryFilter(
isEmpty(term)
? undefined
: {
query: { bool: { must: [{ term }] } },
}
);
}, [selectedQuickFilters]);
return ( return (
<PageLayoutV1 <PageLayoutV1
leftPanel={ leftPanel={

View File

@ -96,6 +96,7 @@ const ExplorePage: FunctionComponent = () => {
pathname: `/explore/${tabsInfo[nSearchIndex].path}/${searchQueryParam}`, pathname: `/explore/${tabsInfo[nSearchIndex].path}/${searchQueryParam}`,
search: Qs.stringify({ page: 1 }), search: Qs.stringify({ page: 1 }),
}); });
setAdvancedSearchQueryFilter(undefined);
}; };
const handleQueryFilterChange: ExploreProps['onChangeAdvancedSearchJsonTree'] = const handleQueryFilterChange: ExploreProps['onChangeAdvancedSearchJsonTree'] =