import { useMutation } from '@tanstack/react-query';
import { useAuthStore } from '@/stores/auth';
import { login as loginService } from '@/services/api/auth';
import type { LoginRequest } from '@/services/api/auth';

export const useLogin = () => {
  const loginStore = useAuthStore((state) => state.login);

  return useMutation({
    mutationFn: async (credentials: LoginRequest) => {
      // Appeler le service et mettre à jour le store
      const response = await loginService(credentials);
      // Le store sera mis à jour automatiquement car loginService stocke déjà les tokens
      // Mais on peut aussi appeler loginStore pour mettre à jour l'état
      await loginStore(credentials);
      return response;
    },
  });
};
