useLogout.ts 521 B

12345678910111213141516171819
  1. "use client";
  2. import { useRouter } from "next/navigation";
  3. import { useMutation, useQueryClient } from "@tanstack/react-query";
  4. import { authClient } from "@/features/auth/lib/auth-client";
  5. export const useLogout = (redirectUrl: string = "/") => {
  6. const router = useRouter();
  7. const queryClient = useQueryClient();
  8. return useMutation({
  9. mutationFn: async () => {
  10. await authClient.signOut();
  11. router.push(redirectUrl);
  12. queryClient.invalidateQueries({ queryKey: ["session"] });
  13. },
  14. });
  15. };