Global error
In this example, we return a global error if the password is incorrect.
const schema = z.object({
email: z.string().min(1).email(),
password: z.string().min(1),
})
const mutation = makeDomainFunction(schema)(async (values) => {
if (values.password !== 'supersafe') {
throw 'Wrong email or password'
}
return values
})
export const action: ActionFunction = async ({ request }) =>
formAction({ request, schema, mutation })
export default () => (
<Form schema={schema}>
{({ Field, Errors, Button }) => (
<>
<Field name="email" autoFocus />
<Field name="password" type="password" />
<Errors />
<Button />
</>
)}
</Form>
)
Global error
In this example, we return a global error if the password is incorrect.
const schema = z.object({
email: z.string().min(1).email(),
password: z.string().min(1),
})
const mutation = makeDomainFunction(schema)(async (values) => {
if (values.password !== 'supersafe') {
throw 'Wrong email or password'
}
return values
})
export const action: ActionFunction = async ({ request }) =>
formAction({ request, schema, mutation })
export default () => (
<Form schema={schema}>
{({ Field, Errors, Button }) => (
<>
<Field name="email" autoFocus />
<Field name="password" type="password" />
<Errors />
<Button />
</>
)}
</Form>
)