From 4fbd1f0c7d21c700ba270e527f272c2f48cbfe0e Mon Sep 17 00:00:00 2001 From: "Embruch, Gerd" <gerd.embruch@uni-hamburg.de> Date: Sat, 10 Aug 2024 20:50:42 +0200 Subject: [PATCH] fixed users update --- src/pages/User/List/User.jsx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/pages/User/List/User.jsx b/src/pages/User/List/User.jsx index 07a55a2..bbaf168 100644 --- a/src/pages/User/List/User.jsx +++ b/src/pages/User/List/User.jsx @@ -19,7 +19,8 @@ function User({ user, idx, setConfirmDialog }) { name: z.string().min(2), username: z.string().min(2), email: z.string().min(1).email(), - verified: z.string().transform((val) => val === 'true' ? true : false), + // turn string into boolean + verified: z.string().toLowerCase().transform((x) => x === 'true').pipe(z.boolean()), role: z.coerce.number() }); // ################################# @@ -32,8 +33,9 @@ function User({ user, idx, setConfirmDialog }) { // ### PREPARE FORM const methods = useForm({ resolver: zodResolver(schema), - mode: 'onBlur', - defaultValues: user + mode: 'onChange', + // use anything from user, but turn verified into string + defaultValues: { ...user, verified: user.verified.toString() } }); @@ -70,7 +72,7 @@ function User({ user, idx, setConfirmDialog }) { <RiDeleteBinLine className='cursor-pointer hover:text-UhhRed' title='delete user' onClick={() => setConfirmDialog({ open: true, idToDelete: user.id, displayName: user.username })} /> </h2> <FormProvider {...methods} > - <form onSubmit={methods.handleSubmit(handleSendForm)} noValidate> + <form onSubmit={methods.handleSubmit(handleSendForm)}> <Input name='name' type='text' title='name' required={true} /> <Input name='username' type='text' title='username' required={true} /> -- GitLab