-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathuseGetBaseStudies.tsx
More file actions
51 lines (48 loc) · 1.84 KB
/
useGetBaseStudies.tsx
File metadata and controls
51 lines (48 loc) · 1.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import { SearchCriteria, SearchDataType, SortBy } from 'pages/Study/Study.types';
import { useQuery } from 'react-query';
import API from 'utils/api';
export const baseStudiesSearchHelper = (searchCriteria: Partial<SearchCriteria>) => {
return API.NeurostoreServices.StudiesService.baseStudiesGet(
searchCriteria.isNested,
undefined, // year_min
undefined, // x
undefined, // y
undefined, // z
undefined, // radius
undefined, // year_max
undefined, // feature_filter
undefined, // pipeline_config
undefined, // feature_display
undefined, // semantic_search
undefined, // pipeline_config_id
undefined, // distance_threshold
undefined, // overall_cap
undefined, // feature_flatten
searchCriteria.genericSearchStr || undefined,
searchCriteria.sortBy === SortBy.RELEVANCE ? undefined : searchCriteria.sortBy,
searchCriteria.pageOfResults,
searchCriteria.descOrder,
searchCriteria.pageSize,
searchCriteria.nameSearch || undefined,
searchCriteria.descriptionSearch || undefined,
searchCriteria.authorSearch || undefined,
'group',
searchCriteria.dataType === SearchDataType.ALL ? 'both' : searchCriteria.dataType,
undefined, // is_oa
searchCriteria.journalSearch || undefined,
searchCriteria.pmid,
searchCriteria.doi,
searchCriteria.flat,
searchCriteria.info
);
};
const useGetBaseStudies = (searchCriteria: Partial<SearchCriteria>, enabled?: boolean) => {
return useQuery(['studies', { ...searchCriteria }], () => baseStudiesSearchHelper(searchCriteria), {
enabled,
select: (res) => {
const studyList = res.data;
return studyList;
},
});
};
export default useGetBaseStudies;