feat(all): conexión de servicio de login.

This commit is contained in:
Emmanuel Rojas committed 2026-09-07 20:11:59 -05:00
1 parent 33d3afb768
commit 9fa5cc38e8
27 files changed
+2173 -139

No files matched your search

+26
View File
@@ -0,0 +1,26 @@
"use client";
import { useMutation } from "@tanstack/react-query";
import { apiClient } from "@/lib/apiClient";
import { useAuthStore } from "@/stores/authStore";
import type { RegisterRequest, LoginResponse } from "@/types/auth";
async function registerFn(data: RegisterRequest): Promise<LoginResponse> {
const res = await apiClient.post<LoginResponse>("/api/auth/register", data);
return res.data;
}
export function useRegister(onSuccess?: () => void) {
const { login } = useAuthStore();
return useMutation({
mutationFn: registerFn,
onSuccess: (data) => {
login(
{ id: "", name: "", email: "", role: "student" },
data.token,
);
localStorage.setItem("refreshToken", data.refreshToken);
onSuccess?.();
},
});
}