forge42dev / remix-hook-form

Open source wrapper for react-hook-form aimed at Remix.run
MIT License
330 stars 27 forks source link

remix-hook-form not compatible with 7.51.0 of react-hook-form #84

Closed AdiRishi closed 6 months ago

AdiRishi commented 6 months ago

As of 7.51.0 react-hook-form has a property called validatingFields in the formState object. Since remix-hook-form does not export this, it leads to type errors when upgrading react-hook-form's latest version

error TS2322: Type '{ children: Element; handleSubmit: (e?: BaseSyntheticEvent<object, any, any> | undefined) => Promise<void>; reset: (values?: { message: string; name: string; email: string; phoneNumber: string; } | { ...; } | undefined, options?: Partial<...> | undefined) => void; ... 12 more ...; setFocus: UseFormSetFocus<...>; }' is not assignable to type 'RemixFormProviderProps<{ message: string; name: string; email: string; phoneNumber: string; }>'.
  Types of property 'formState' are incompatible.
    Property 'validatingFields' is missing in type '{ disabled: boolean; dirtyFields: Partial<Readonly<{ message?: boolean | undefined; name?: boolean | undefined; email?: boolean | undefined; phoneNumber?: boolean | undefined; }>>; ... 9 more ...; errors: FieldErrors<...>; }' but required in type 'FormState<{ message: string; name: string; email: string; phoneNumber: string; }>'.

82           <FormProvider {...form}>
              ~~~~~~~~~~~~

  ../../node_modules/.pnpm/react-hook-form@7.51.0_react@18.2.0/node_modules/react-hook-form/dist/types/form.d.ts:103:5
    103     validatingFields: Partial<Readonly<FieldNamesMarkedBoolean<TFieldValues>>>;
            ~~~~~~~~~~~~~~~~
    'validatingFields' is declared here.