feat: login / logout toast
This commit is contained in:
@@ -1,17 +1,21 @@
|
||||
export default defineEventHandler(async (event) => {
|
||||
try {
|
||||
const variables = await readBody<AuthLoginForm>(event);
|
||||
const { data, error } = await useServerGraphQLMutation(event, "AuthLogin", variables);
|
||||
const { data } = await useServerGraphQLMutation(event, "AuthLogin", variables);
|
||||
if (!data?.login) {
|
||||
throw new Error(error?.message || "Une erreur est survenue lors de la connexion.");
|
||||
throw new Error("INVALID_LOGIN");
|
||||
}
|
||||
if (!await handleLogin(event, data)) {
|
||||
throw new Error("Échec de la connexion.");
|
||||
throw new Error("LOGIN_FAILED");
|
||||
}
|
||||
return { success: true, message: "Connexion réussie" };
|
||||
}
|
||||
catch (error) {
|
||||
const message = error instanceof Error ? error.message : "Une erreur est survenue lors de la déconnexion.";
|
||||
return { success: false, message };
|
||||
const messages = {
|
||||
INVALID_LOGIN: "Identifiants invalides. Veuillez réessayer.",
|
||||
LOGIN_FAILED: "Une erreur est survenue lors de la connexion. Veuillez réessayer plus tard.",
|
||||
};
|
||||
const message = (error instanceof Error && error.message in messages) ? error.message : "LOGIN_FAILED";
|
||||
return { success: false, message: messages[message as keyof typeof messages] };
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user