hooks/useHomeData.ts
Annotation non disponible
Lance npm run annotate (nécessite ANTHROPIC_API_KEY dans .env.local) pour générer une annotation française par Claude Haiku 4.5.
2 exports
useHomeDataHomeData
Code source· typescript
import { useQuery } from '@tanstack/react-query';
import { apiGet } from '@/lib/api';
import { API_URL } from '@/lib/constants';
import type {
VitrineSummary,
ProduitSummary,
PrestationSummary,
CategorieWari,
} from '@/types/api';
export type HomeData = {
vitrines: VitrineSummary[];
restaurantsOuverts: VitrineSummary[];
produits: ProduitSummary[];
promos: ProduitSummary[];
prestations: PrestationSummary[];
categories: CategorieWari[];
};
export function useHomeData() {
return useQuery<HomeData>({
queryKey: ['home'],
queryFn: async () => {
const { data, error } = await apiGet<HomeData>(`${API_URL}/mobile/home`);
if (error || !data) throw new Error(error ?? 'Erreur home');
return data;
},
staleTime: 5 * 60 * 1000,
retry: 3,
});
}
import { useQuery } from '@tanstack/react-query';
import { apiGet } from '@/lib/api';
import { API_URL } from '@/lib/constants';
import type {
VitrineSummary,
ProduitSummary,
PrestationSummary,
CategorieWari,
} from '@/types/api';
export type HomeData = {
vitrines: VitrineSummary[];
restaurantsOuverts: VitrineSummary[];
produits: ProduitSummary[];
promos: ProduitSummary[];
prestations: PrestationSummary[];
categories: CategorieWari[];
};
export function useHomeData() {
return useQuery<HomeData>({
queryKey: ['home'],
queryFn: async () => {
const { data, error } = await apiGet<HomeData>(`${API_URL}/mobile/home`);
if (error || !data) throw new Error(error ?? 'Erreur home');
return data;
},
staleTime: 5 * 60 * 1000,
retry: 3,
});
}