From 4dd7a7e9b6187578df668d6088f35050eb545fe6 Mon Sep 17 00:00:00 2001 From: aashishsingla Date: Wed, 8 Nov 2023 10:09:50 +0530 Subject: [PATCH] fix: add async await to use controller onchange --- reports/api-extractor.md | 4 ++-- src/types/controller.ts | 5 ++--- src/useController.ts | 4 ++-- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/reports/api-extractor.md b/reports/api-extractor.md index 79d67c9e15c..6dd4e7c44e0 100644 --- a/reports/api-extractor.md +++ b/reports/api-extractor.md @@ -104,8 +104,8 @@ export type ControllerProps = FieldPath> = { - onChange: (...event: any[]) => void; - onBlur: Noop; + onChange: (...event: any[]) => Promise; + onBlur: () => Promise; value: FieldPathValue; disabled?: boolean; name: TName; diff --git a/src/types/controller.ts b/src/types/controller.ts index e8b96996ac7..e2b483bd2a4 100644 --- a/src/types/controller.ts +++ b/src/types/controller.ts @@ -7,7 +7,6 @@ import { FieldPath, FieldPathValue, FieldValues, - Noop, RefCallBack, UseFormStateReturn, } from './'; @@ -23,8 +22,8 @@ export type ControllerRenderProps< TFieldValues extends FieldValues = FieldValues, TName extends FieldPath = FieldPath, > = { - onChange: (...event: any[]) => void; - onBlur: Noop; + onChange: (...event: any[]) => Promise; + onBlur: () => Promise; value: FieldPathValue; disabled?: boolean; name: TName; diff --git a/src/useController.ts b/src/useController.ts index 08a3bc629a9..f61c929bf3d 100644 --- a/src/useController.ts +++ b/src/useController.ts @@ -131,7 +131,7 @@ export function useController< ? { disabled: formState.disabled || disabled } : {}), onChange: React.useCallback( - (event) => + async (event) => _registerProps.current.onChange({ target: { value: getEventValue(event), @@ -142,7 +142,7 @@ export function useController< [name], ), onBlur: React.useCallback( - () => + async () => _registerProps.current.onBlur({ target: { value: get(control._formValues, name),