infoalloggi-monorepo/apps/infoalloggi/src/lib/zodForm.ts

17 lines
430 B
TypeScript
Raw Normal View History

2025-08-04 17:45:44 +02:00
import { zodResolver } from "@hookform/resolvers/zod";
import { type UseFormProps, useForm } from "react-hook-form";
import type { z, ZodTypeAny } from "zod";
export function useZodForm<TSchema extends ZodTypeAny>(
props: Omit<UseFormProps<z.infer<TSchema>>, "resolver"> & {
schema: TSchema;
},
) {
const form = useForm<z.infer<TSchema>>({
...props,
resolver: zodResolver(props.schema),
});
return form;
}