react-hook-form 7.24.0 → 7.24.1
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/README.md +12 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.mjs +15 -7
- 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/createFormControl.d.ts.map +1 -1
- package/dist/types/form.d.ts +7 -0
- package/dist/types/form.d.ts.map +1 -1
- package/package.json +2 -2
package/dist/index.esm.mjs
CHANGED
@@ -285,8 +285,8 @@ function useController(props) {
|
|
285
285
|
formState,
|
286
286
|
fieldState: {
|
287
287
|
invalid: !!get(formState.errors, name),
|
288
|
-
isDirty:
|
289
|
-
isTouched:
|
288
|
+
isDirty: get(formState.dirtyFields, name),
|
289
|
+
isTouched: get(formState.touchedFields, name),
|
290
290
|
error: get(formState.errors, name),
|
291
291
|
},
|
292
292
|
};
|
@@ -1378,7 +1378,8 @@ function createFormControl(props = {}) {
|
|
1378
1378
|
const setValue = (name, value, options = {}) => {
|
1379
1379
|
const field = get(_fields, name);
|
1380
1380
|
const isFieldArray = _names.array.has(name);
|
1381
|
-
|
1381
|
+
const cloneValue = cloneObject(value);
|
1382
|
+
set(_formValues, name, cloneValue);
|
1382
1383
|
if (isFieldArray) {
|
1383
1384
|
_subjects.array.next({
|
1384
1385
|
name,
|
@@ -1390,14 +1391,14 @@ function createFormControl(props = {}) {
|
|
1390
1391
|
_subjects.state.next({
|
1391
1392
|
name,
|
1392
1393
|
dirtyFields: _formState.dirtyFields,
|
1393
|
-
isDirty: _getDirty(name,
|
1394
|
+
isDirty: _getDirty(name, cloneValue),
|
1394
1395
|
});
|
1395
1396
|
}
|
1396
1397
|
}
|
1397
1398
|
else {
|
1398
|
-
field && !field._f && !isNullOrUndefined(
|
1399
|
-
? setValues(name,
|
1400
|
-
: setFieldValue(name,
|
1399
|
+
field && !field._f && !isNullOrUndefined(cloneValue)
|
1400
|
+
? setValues(name, cloneValue, options)
|
1401
|
+
: setFieldValue(name, cloneValue, options);
|
1401
1402
|
}
|
1402
1403
|
isWatched(name, _names) && _subjects.state.next({});
|
1403
1404
|
_subjects.watch.next({
|
@@ -1502,6 +1503,12 @@ function createFormControl(props = {}) {
|
|
1502
1503
|
? get(values, fieldNames)
|
1503
1504
|
: fieldNames.map((name) => get(values, name));
|
1504
1505
|
};
|
1506
|
+
const _getFieldState = (name, formState) => ({
|
1507
|
+
invalid: !!get((formState || _formState).errors, name),
|
1508
|
+
isDirty: get((formState || _formState).dirtyFields, name),
|
1509
|
+
isTouched: get((formState || _formState).touchedFields, name),
|
1510
|
+
error: get((formState || _formState).errors, name),
|
1511
|
+
});
|
1505
1512
|
const clearErrors = (name) => {
|
1506
1513
|
name
|
1507
1514
|
? convertToArrayPayload(name).forEach((inputName) => unset(_formState.errors, inputName))
|
@@ -1830,6 +1837,7 @@ function createFormControl(props = {}) {
|
|
1830
1837
|
unregister,
|
1831
1838
|
setError,
|
1832
1839
|
setFocus,
|
1840
|
+
_getFieldState,
|
1833
1841
|
};
|
1834
1842
|
}
|
1835
1843
|
|