Markdown editor in progress + Login and session process completed

This commit is contained in:
2024-08-19 16:27:09 +02:00
parent aba56bb034
commit 2e92c389a2
74 changed files with 1305 additions and 313 deletions

View File

@@ -1,7 +1,7 @@
import { z } from "zod";
export const schema = z.object({
username: z.string({ required_error: "Nom d'utilisateur obligatoire" }),
usernameOrEmail: z.string({ required_error: "Nom d'utilisateur ou email obligatoire" }),
password: z.string({ required_error: "Mot de passe obligatoire" }),
});

View File

@@ -35,7 +35,17 @@ function securePassword(password: string, ctx: z.RefinementCtx): void {
}
export const schema = z.object({
username: z.string({ required_error: "Nom d'utilisateur obligatoire" }).min(3, "Votre nom d'utilisateur doit contenir au moins 3 caractères").max(32, "Votre nom d'utilisateur doit contenir au plus 32 caractères"),
username: z.string({ required_error: "Nom d'utilisateur obligatoire" }).min(3, "Votre nom d'utilisateur doit contenir au moins 3 caractères").max(32, "Votre nom d'utilisateur doit contenir au plus 32 caractères").superRefine((user, ctx) => {
const test = z.string().email().safeParse(user);
if(test.success)
{
ctx.addIssue({
code: z.ZodIssueCode.invalid_string,
validation: 'email',
message: "Votre nom d'utilisateur ne peut pas être une addresse mail",
});
}
}),
email: z.string({ required_error: "Email obligatoire" }).email("Adresse mail invalide"),
password: z.string({ required_error: "Mot de passe obligatoire" }).min(8, "Votre mot de passe doit contenir au moins 8 caractères").max(128, "Votre mot de passe doit contenir au moins 8 caractères").superRefine(securePassword),
data: z.object({