diff --git a/client/src/api/auth/auth.api.ts b/client/src/api/auth/auth.api.ts index b49f88d..ba699b7 100644 --- a/client/src/api/auth/auth.api.ts +++ b/client/src/api/auth/auth.api.ts @@ -27,3 +27,7 @@ export async function refreshApi() { const res = await apiProtected.post("/api/auth/refresh-token"); return res.data as { accessToken: string }; } + +export async function logoutApi(): Promise { + await apiProtected.post("/api/auth/logout"); +} diff --git a/client/src/features/auth/mutations/useLogoutMutation.ts b/client/src/features/auth/mutations/useLogoutMutation.ts new file mode 100644 index 0000000..4133e92 --- /dev/null +++ b/client/src/features/auth/mutations/useLogoutMutation.ts @@ -0,0 +1,12 @@ +import { useMutation } from "@tanstack/react-query"; +import { logoutApi } from "../../../api/auth/auth.api"; +import { triggerLogout } from "../../../api/auth/logoutBus"; + +export function useLogoutMutation() { + return useMutation({ + mutationFn: logoutApi, + onSettled: () => { + triggerLogout(); + }, + }); +}