hooks/useHomeData.ts

hook·mobile·0.8 KB · 32 lignes· Voir l'itinéraire
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,
  });
}