react-hook-form 7.52.0 → 7.52.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/controller.d.ts +0 -1
- package/dist/controller.d.ts.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.mjs +6 -5
- package/dist/index.esm.mjs.map +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.map +1 -1
- package/dist/logic/generateWatchOutput.d.ts +1 -1
- package/dist/logic/generateWatchOutput.d.ts.map +1 -1
- package/dist/logic/getDirtyFields.d.ts.map +1 -1
- package/dist/logic/getFieldValueAs.d.ts +1 -1
- package/dist/logic/getFieldValueAs.d.ts.map +1 -1
- package/dist/logic/getProxyFormState.d.ts.map +1 -1
- package/dist/logic/getResolverOptions.d.ts +3 -3
- package/dist/logic/getResolverOptions.d.ts.map +1 -1
- package/dist/logic/getRuleValue.d.ts +1 -1
- package/dist/logic/getRuleValue.d.ts.map +1 -1
- package/dist/logic/hasValidation.d.ts +1 -1
- package/dist/logic/isNameInFieldArray.d.ts.map +1 -1
- package/dist/logic/iterateFieldsByAction.d.ts.map +1 -1
- package/dist/logic/shouldRenderFormState.d.ts +2 -2
- package/dist/logic/shouldRenderFormState.d.ts.map +1 -1
- package/dist/logic/shouldSubscribeByName.d.ts +1 -1
- package/dist/logic/shouldSubscribeByName.d.ts.map +1 -1
- package/dist/logic/skipValidation.d.ts.map +1 -1
- package/dist/logic/unsetEmptyArray.d.ts.map +1 -1
- package/dist/logic/updateFieldArrayRootError.d.ts.map +1 -1
- package/dist/logic/validateField.d.ts.map +1 -1
- package/dist/react-server.esm.mjs.map +1 -1
- package/dist/types/controller.d.ts +1 -1
- package/dist/types/errors.d.ts.map +1 -1
- package/dist/types/fieldArray.d.ts.map +1 -1
- package/dist/types/form.d.ts.map +1 -1
- package/dist/types/path/common.d.ts.map +1 -1
- package/dist/types/path/eager.d.ts.map +1 -1
- package/dist/types/utils.d.ts.map +1 -1
- package/dist/useController.d.ts.map +1 -1
- package/dist/useFieldArray.d.ts.map +1 -1
- package/dist/useFormContext.d.ts.map +1 -1
- package/dist/useWatch.d.ts.map +1 -1
- package/dist/utils/append.d.ts.map +1 -1
- package/dist/utils/compact.d.ts.map +1 -1
- package/dist/utils/convertToArrayPayload.d.ts.map +1 -1
- package/dist/utils/createSubject.d.ts.map +1 -1
- package/dist/utils/fillEmptyArray.d.ts.map +1 -1
- package/dist/utils/get.d.ts.map +1 -1
- package/dist/utils/isBoolean.d.ts.map +1 -1
- package/dist/utils/isCheckBoxInput.d.ts.map +1 -1
- package/dist/utils/isDateObject.d.ts.map +1 -1
- package/dist/utils/isEmptyObject.d.ts.map +1 -1
- package/dist/utils/isFileInput.d.ts.map +1 -1
- package/dist/utils/isFunction.d.ts.map +1 -1
- package/dist/utils/isHTMLElement.d.ts.map +1 -1
- package/dist/utils/isMessage.d.ts +2 -1
- package/dist/utils/isMessage.d.ts.map +1 -1
- package/dist/utils/isMultipleSelect.d.ts.map +1 -1
- package/dist/utils/isNullOrUndefined.d.ts.map +1 -1
- package/dist/utils/isObject.d.ts.map +1 -1
- package/dist/utils/isPrimitive.d.ts.map +1 -1
- package/dist/utils/isRadioInput.d.ts.map +1 -1
- package/dist/utils/isRadioOrCheckbox.d.ts.map +1 -1
- package/dist/utils/isRegex.d.ts.map +1 -1
- package/dist/utils/isString.d.ts.map +1 -1
- package/dist/utils/isUndefined.d.ts.map +1 -1
- package/dist/utils/move.d.ts.map +1 -1
- package/dist/utils/objectHasFunction.d.ts.map +1 -1
- package/dist/utils/prepend.d.ts.map +1 -1
- package/dist/utils/remove.d.ts.map +1 -1
- package/dist/utils/swap.d.ts.map +1 -1
- package/dist/utils/update.d.ts.map +1 -1
- package/package.json +34 -41
package/dist/index.esm.mjs
CHANGED
@@ -407,6 +407,7 @@ function useController(props) {
|
|
407
407
|
const formState = useFormState({
|
408
408
|
control,
|
409
409
|
name,
|
410
|
+
exact: true,
|
410
411
|
});
|
411
412
|
const _registerProps = React.useRef(control.register(name, {
|
412
413
|
...props.rules,
|
@@ -468,7 +469,7 @@ function useController(props) {
|
|
468
469
|
},
|
469
470
|
type: EVENTS.BLUR,
|
470
471
|
}), [name, control]),
|
471
|
-
ref: (elm) => {
|
472
|
+
ref: React.useCallback((elm) => {
|
472
473
|
const field = get(control._fields, name);
|
473
474
|
if (field && elm) {
|
474
475
|
field._f.ref = {
|
@@ -478,7 +479,7 @@ function useController(props) {
|
|
478
479
|
reportValidity: () => elm.reportValidity(),
|
479
480
|
};
|
480
481
|
}
|
481
|
-
},
|
482
|
+
}, [control._fields, name]),
|
482
483
|
},
|
483
484
|
formState,
|
484
485
|
fieldState: Object.defineProperties({}, {
|
@@ -709,7 +710,7 @@ const iterateFieldsByAction = (fields, action, fieldsNames, abortEarly) => {
|
|
709
710
|
};
|
710
711
|
|
711
712
|
var updateFieldArrayRootError = (errors, error, name) => {
|
712
|
-
const fieldArrayErrors =
|
713
|
+
const fieldArrayErrors = convertToArrayPayload(get(errors, name));
|
713
714
|
set(fieldArrayErrors, 'root', error[name]);
|
714
715
|
set(errors, name, fieldArrayErrors);
|
715
716
|
return errors;
|
@@ -1791,7 +1792,7 @@ function createFormControl(props = {}) {
|
|
1791
1792
|
: set(_formState.errors, _f.name, fieldError[_f.name])
|
1792
1793
|
: unset(_formState.errors, _f.name));
|
1793
1794
|
}
|
1794
|
-
fieldValue &&
|
1795
|
+
!isEmptyObject(fieldValue) &&
|
1795
1796
|
(await executeBuiltInValidation(fieldValue, shouldOnlyCheckValid, context));
|
1796
1797
|
}
|
1797
1798
|
}
|
@@ -2361,7 +2362,7 @@ function createFormControl(props = {}) {
|
|
2361
2362
|
? _formState.isSubmitted
|
2362
2363
|
: false,
|
2363
2364
|
dirtyFields: isEmptyResetValues
|
2364
|
-
?
|
2365
|
+
? {}
|
2365
2366
|
: keepStateOptions.keepDirtyValues
|
2366
2367
|
? keepStateOptions.keepDefaultValues && _formValues
|
2367
2368
|
? getDirtyFields(_defaultValues, _formValues)
|