Refactored queries.

This commit is contained in:
Mike Cao 2024-01-30 00:10:25 -08:00
parent 18e36aa7b3
commit b16f5cc067
67 changed files with 523 additions and 576 deletions

View file

@ -1,23 +1,23 @@
import { useState } from 'react';
import useApi from './useApi';
import useFilterQuery from './useFilterQuery';
import useCache from 'store/cache';
export function useReports(websiteId?: string) {
const [modified, setModified] = useState(Date.now());
export function useReports({ websiteId, teamId }: { websiteId?: string; teamId?: string }) {
const modified = useCache((state: any) => state?.reports);
const { get, del, useMutation } = useApi();
const { mutate } = useMutation({ mutationFn: (reportId: string) => del(`/reports/${reportId}`) });
const queryResult = useFilterQuery({
queryKey: ['reports', { websiteId, modified }],
queryFn: (params: any) => {
return get(websiteId ? `/websites/${websiteId}/reports` : `/reports`, params);
const url = websiteId ? `/websites/${websiteId}/reports` : `/reports`;
return get(teamId ? `/teams/${teamId}${url}` : url, params);
},
});
const { mutate } = useMutation({ mutationFn: (reportId: string) => del(`/reports/${reportId}`) });
const deleteReport = (id: any) => {
mutate(id, {
onSuccess: () => {
setModified(Date.now());
},
const deleteReport = (reportId: any) => {
mutate(reportId, {
onSuccess: () => {},
});
};

View file

@ -0,0 +1,16 @@
import useApi from './useApi';
import useFilterQuery from './useFilterQuery';
export function useTeamMembers(teamId: string) {
const { get } = useApi();
return useFilterQuery({
queryKey: ['teams:users', { teamId }],
queryFn: (params: any) => {
return get(`/teams/${teamId}/users`, params);
},
enabled: !!teamId,
});
}
export default useTeamMembers;