reorganize filter query hooks and remove unused track usage mutation

This commit is contained in:
Mo Tarbin
2026-02-04 00:09:14 -05:00
parent 6c95c683ba
commit 3a13f111eb
2 changed files with 11 additions and 58 deletions

View File

@@ -7,12 +7,11 @@ import {
validateFilter,
} from '../../../utils/FilterEngine'
import {
useFilters,
useCreateFilter,
useUpdateFilter,
useDeleteFilter,
useFilters,
useToggleFilterPin,
useTrackFilterUsage,
useUpdateFilter,
} from '../../Filters/FilterQueries'
export const useCustomFilters = (chores, membersData, labels, projects) => {
@@ -24,7 +23,6 @@ export const useCustomFilters = (chores, membersData, labels, projects) => {
const updateFilterMutation = useUpdateFilter()
const deleteFilterMutation = useDeleteFilter()
const togglePinMutation = useToggleFilterPin()
const trackUsageMutation = useTrackFilterUsage()
const [activeFilterId, setActiveFilterId] = useState(null)
const [tempFilter, setTempFilter] = useState(null)
@@ -90,13 +88,9 @@ export const useCustomFilters = (chores, membersData, labels, projects) => {
return applyFilter(chores, activeFilter, context)
}, [chores, activeFilter, tempFilter, context])
const applyCustomFilter = useCallback(
filterId => {
setActiveFilterId(filterId)
trackUsageMutation.mutate(filterId)
},
[trackUsageMutation],
)
const applyCustomFilter = useCallback(filterId => {
setActiveFilterId(filterId)
}, [])
const clearActiveFilter = useCallback(() => {
setActiveFilterId(null)

View File

@@ -1,14 +1,13 @@
import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query'
import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'
import {
GetFilters,
GetFilterById,
GetPinnedFilters,
GetFiltersByUsage,
CreateFilter,
UpdateFilter,
DeleteFilter,
GetFilterById,
GetFilters,
GetFiltersByUsage,
GetPinnedFilters,
ToggleFilterPin,
TrackFilterUsage,
UpdateFilter,
} from '../../utils/Fetcher'
// Query hook for fetching all filters
@@ -252,43 +251,3 @@ export const useToggleFilterPin = () => {
},
})
}
// Mutation hook for tracking filter usage
export const useTrackFilterUsage = () => {
const queryClient = useQueryClient()
return useMutation({
mutationFn: async filterId => {
try {
const response = await TrackFilterUsage(filterId)
if (response.ok) {
const data = await response.json()
return data.res || data
}
// Silently fail for tracking - not critical
return null
} catch (error) {
console.error('Error tracking filter usage:', error)
// Silently fail for tracking
return null
}
},
onSuccess: updatedFilter => {
if (!updatedFilter) return
// Update the filters cache
queryClient.setQueryData(['filters'], oldFilters => {
if (!oldFilters) return [updatedFilter]
return oldFilters.map(filter =>
filter.id === updatedFilter.id ? updatedFilter : filter,
)
})
// Update specific filter cache
queryClient.setQueryData(['filters', updatedFilter.id], updatedFilter)
// Invalidate usage-related queries
queryClient.invalidateQueries(['filters', 'by-usage'])
},
})
}