first commit
Some checks failed
Build / run (push) Has been cancelled

This commit is contained in:
maher
2025-10-29 11:42:25 +01:00
commit 703f50a09d
4595 changed files with 385164 additions and 0 deletions

View File

@@ -0,0 +1,44 @@
import {
FieldValues,
FormProvider,
SubmitHandler,
UseFormReturn,
} from 'react-hook-form';
import {FocusEventHandler, ReactNode} from 'react';
interface Props<T extends FieldValues> {
children: ReactNode;
form: UseFormReturn<T>;
className?: string;
onSubmit: SubmitHandler<T>;
onBeforeSubmit?: () => void;
onBlur?: FocusEventHandler<HTMLFormElement>;
id?: string;
}
export function Form<T extends FieldValues>({
children,
onBeforeSubmit,
onSubmit,
form,
className,
id,
onBlur,
}: Props<T>) {
return (
<FormProvider {...form}>
<form
id={id}
onBlur={onBlur}
className={className}
onSubmit={e => {
// prevent parent forms from submitting, if nested
e.stopPropagation();
onBeforeSubmit?.();
form.handleSubmit(onSubmit)(e);
}}
>
{children}
</form>
</FormProvider>
);
}