import { useQuery } from '@tanstack/react-query' import { Units } from '../../types/services/unit' import { api } from '../api' interface UnitsQueryParams { page?: number limit?: number search?: string } export const useUnitsQuery = { getUnits: (params: UnitsQueryParams = {}) => { const { page = 1, limit = 10, search = '', ...filters } = params return useQuery({ queryKey: ['units', { page, limit, search, ...filters }], queryFn: async () => { const queryParams = new URLSearchParams() queryParams.append('page', page.toString()) queryParams.append('limit', limit.toString()) if (search) { queryParams.append('search', search) } // Add other filters Object.entries(filters).forEach(([key, value]) => { if (value !== undefined && value !== null && value !== '') { queryParams.append(key, value.toString()) } }) const res = await api.get(`/units?${queryParams.toString()}`) return res.data.data }, }) } }