feat: add hosts management

This commit is contained in:
2024-11-09 10:33:07 +00:00
parent 31c43836f4
commit d931235fb3
27 changed files with 742 additions and 94 deletions
+26
View File
@@ -0,0 +1,26 @@
import { z } from "zod";
import { FieldValues, useForm } from "react-hook-form";
import { zodResolver } from "@hookform/resolvers/zod";
import { useEffect } from "react";
export const useZForm = <T extends FieldValues>(
schema: z.ZodSchema<T>,
value?: Partial<T> | null
) => {
const form = useForm<T>({
resolver: zodResolver(schema),
defaultValues: value as never,
});
useEffect(() => {
if (value) {
form.reset(value as never);
}
}, [value]);
return form;
};
export type UseZFormReturn<T extends FieldValues> = ReturnType<
typeof useZForm<T>
>;