refactor(web): remove typescript

This commit is contained in:
Ali BARIN
2024-02-27 15:23:23 +00:00
parent 636870a075
commit b3ae2d2748
337 changed files with 2067 additions and 4997 deletions

View File

@@ -1,26 +1,7 @@
import * as React from 'react';
import {
FormProvider,
useForm,
useWatch,
FieldValues,
SubmitHandler,
UseFormReturn,
} from 'react-hook-form';
import type { UseFormProps } from 'react-hook-form';
type FormProps = {
children?: React.ReactNode;
defaultValues?: UseFormProps['defaultValues'];
onSubmit?: SubmitHandler<FieldValues>;
render?: (props: UseFormReturn) => React.ReactNode;
resolver?: UseFormProps['resolver'];
mode?: UseFormProps['mode'];
};
import { FormProvider, useForm, useWatch } from 'react-hook-form';
const noop = () => null;
export default function Form(props: FormProps): React.ReactElement {
export default function Form(props) {
const {
children,
onSubmit = noop,
@@ -30,27 +11,22 @@ export default function Form(props: FormProps): React.ReactElement {
mode = 'all',
...formProps
} = props;
const methods: UseFormReturn = useForm({
const methods = useForm({
defaultValues,
reValidateMode: 'onBlur',
resolver,
mode,
});
const form = useWatch({ control: methods.control });
/**
* For fields having `dependsOn` fields, we need to re-validate the form.
*/
React.useEffect(() => {
methods.trigger();
}, [methods.trigger, form]);
React.useEffect(() => {
methods.reset(defaultValues);
}, [defaultValues]);
return (
<FormProvider {...methods}>
<form onSubmit={methods.handleSubmit(onSubmit)} {...formProps}>