39246-vm/frontend/hooks/useListings.ts
abbashkyt-creator 7d8ce0e322 V0.1
2026-03-14 04:02:22 +03:00

27 lines
747 B
TypeScript

import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query'
import { fetchListings, deleteListing, deleteAllListings } from '@/lib/api/listings'
export function useListings(limit = 100) {
return useQuery({
queryKey: ['listings', limit],
queryFn: () => fetchListings(limit),
refetchInterval: 10_000,
})
}
export function useDeleteListing() {
const qc = useQueryClient()
return useMutation({
mutationFn: deleteListing,
onSuccess: () => qc.invalidateQueries({ queryKey: ['listings'] }),
})
}
export function useDeleteAllListings() {
const qc = useQueryClient()
return useMutation({
mutationFn: deleteAllListings,
onSuccess: () => qc.invalidateQueries({ queryKey: ['listings'] }),
})
}