react-hook-form 7.22.1 → 7.22.5

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.
Files changed (200) hide show
  1. package/dist/constants.d.ts +1 -0
  2. package/dist/constants.d.ts.map +1 -0
  3. package/dist/controller.d.ts +1 -0
  4. package/dist/controller.d.ts.map +1 -0
  5. package/dist/index.cjs.js +1 -1
  6. package/dist/index.cjs.js.map +1 -1
  7. package/dist/index.d.ts +1 -0
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.esm.mjs +16 -16
  10. package/dist/index.esm.mjs.map +1 -1
  11. package/dist/index.umd.js +1 -1
  12. package/dist/index.umd.js.map +1 -1
  13. package/dist/logic/appendErrors.d.ts +1 -0
  14. package/dist/logic/appendErrors.d.ts.map +1 -0
  15. package/dist/logic/createFormControl.d.ts +1 -0
  16. package/dist/logic/createFormControl.d.ts.map +1 -0
  17. package/dist/logic/focusFieldBy.d.ts +1 -0
  18. package/dist/logic/focusFieldBy.d.ts.map +1 -0
  19. package/dist/logic/generateId.d.ts +1 -0
  20. package/dist/logic/generateId.d.ts.map +1 -0
  21. package/dist/logic/generateWatchOutput.d.ts +1 -0
  22. package/dist/logic/generateWatchOutput.d.ts.map +1 -0
  23. package/dist/logic/getCheckboxValue.d.ts +1 -0
  24. package/dist/logic/getCheckboxValue.d.ts.map +1 -0
  25. package/dist/logic/getDirtyFields.d.ts +1 -0
  26. package/dist/logic/getDirtyFields.d.ts.map +1 -0
  27. package/dist/logic/getEventValue.d.ts +1 -0
  28. package/dist/logic/getEventValue.d.ts.map +1 -0
  29. package/dist/logic/getFieldValue.d.ts +1 -0
  30. package/dist/logic/getFieldValue.d.ts.map +1 -0
  31. package/dist/logic/getFieldValueAs.d.ts +1 -0
  32. package/dist/logic/getFieldValueAs.d.ts.map +1 -0
  33. package/dist/logic/getFocusFieldName.d.ts +1 -0
  34. package/dist/logic/getFocusFieldName.d.ts.map +1 -0
  35. package/dist/logic/getNodeParentName.d.ts +1 -0
  36. package/dist/logic/getNodeParentName.d.ts.map +1 -0
  37. package/dist/logic/getProxyFormState.d.ts +1 -0
  38. package/dist/logic/getProxyFormState.d.ts.map +1 -0
  39. package/dist/logic/getRadioValue.d.ts +1 -0
  40. package/dist/logic/getRadioValue.d.ts.map +1 -0
  41. package/dist/logic/getResolverOptions.d.ts +1 -0
  42. package/dist/logic/getResolverOptions.d.ts.map +1 -0
  43. package/dist/logic/getRuleValue.d.ts +1 -0
  44. package/dist/logic/getRuleValue.d.ts.map +1 -0
  45. package/dist/logic/getValidateError.d.ts +1 -0
  46. package/dist/logic/getValidateError.d.ts.map +1 -0
  47. package/dist/logic/getValueAndMessage.d.ts +1 -0
  48. package/dist/logic/getValueAndMessage.d.ts.map +1 -0
  49. package/dist/logic/hasValidation.d.ts +1 -0
  50. package/dist/logic/hasValidation.d.ts.map +1 -0
  51. package/dist/logic/index.d.ts +1 -0
  52. package/dist/logic/index.d.ts.map +1 -0
  53. package/dist/logic/isNameInFieldArray.d.ts +1 -0
  54. package/dist/logic/isNameInFieldArray.d.ts.map +1 -0
  55. package/dist/logic/isWatched.d.ts +1 -0
  56. package/dist/logic/isWatched.d.ts.map +1 -0
  57. package/dist/logic/mapCurrentIds.d.ts +1 -0
  58. package/dist/logic/mapCurrentIds.d.ts.map +1 -0
  59. package/dist/logic/mapId.d.ts +1 -0
  60. package/dist/logic/mapId.d.ts.map +1 -0
  61. package/dist/logic/schemaErrorLookup.d.ts +1 -0
  62. package/dist/logic/schemaErrorLookup.d.ts.map +1 -0
  63. package/dist/logic/setCustomValidty.d.ts +1 -0
  64. package/dist/logic/setCustomValidty.d.ts.map +1 -0
  65. package/dist/logic/shouldRenderFormState.d.ts +1 -0
  66. package/dist/logic/shouldRenderFormState.d.ts.map +1 -0
  67. package/dist/logic/shouldSubscribeByName.d.ts +1 -0
  68. package/dist/logic/shouldSubscribeByName.d.ts.map +1 -0
  69. package/dist/logic/skipValidation.d.ts +1 -0
  70. package/dist/logic/skipValidation.d.ts.map +1 -0
  71. package/dist/logic/unsetEmptyArray.d.ts +1 -0
  72. package/dist/logic/unsetEmptyArray.d.ts.map +1 -0
  73. package/dist/logic/validateField.d.ts +1 -0
  74. package/dist/logic/validateField.d.ts.map +1 -0
  75. package/dist/types/controller.d.ts +1 -0
  76. package/dist/types/controller.d.ts.map +1 -0
  77. package/dist/types/errors.d.ts +1 -0
  78. package/dist/types/errors.d.ts.map +1 -0
  79. package/dist/types/events.d.ts +1 -0
  80. package/dist/types/events.d.ts.map +1 -0
  81. package/dist/types/fieldArray.d.ts +1 -0
  82. package/dist/types/fieldArray.d.ts.map +1 -0
  83. package/dist/types/fields.d.ts +1 -0
  84. package/dist/types/fields.d.ts.map +1 -0
  85. package/dist/types/form.d.ts +5 -4
  86. package/dist/types/form.d.ts.map +1 -0
  87. package/dist/types/index.d.ts +1 -0
  88. package/dist/types/index.d.ts.map +1 -0
  89. package/dist/types/resolvers.d.ts +1 -0
  90. package/dist/types/resolvers.d.ts.map +1 -0
  91. package/dist/types/utils.d.ts +1 -0
  92. package/dist/types/utils.d.ts.map +1 -0
  93. package/dist/types/validator.d.ts +1 -0
  94. package/dist/types/validator.d.ts.map +1 -0
  95. package/dist/useController.d.ts +1 -0
  96. package/dist/useController.d.ts.map +1 -0
  97. package/dist/useFieldArray.d.ts +1 -0
  98. package/dist/useFieldArray.d.ts.map +1 -0
  99. package/dist/useForm.d.ts +1 -0
  100. package/dist/useForm.d.ts.map +1 -0
  101. package/dist/useFormContext.d.ts +1 -0
  102. package/dist/useFormContext.d.ts.map +1 -0
  103. package/dist/useFormState.d.ts +1 -0
  104. package/dist/useFormState.d.ts.map +1 -0
  105. package/dist/useSubscribe.d.ts +1 -0
  106. package/dist/useSubscribe.d.ts.map +1 -0
  107. package/dist/useWatch.d.ts +1 -0
  108. package/dist/useWatch.d.ts.map +1 -0
  109. package/dist/utils/append.d.ts +1 -0
  110. package/dist/utils/append.d.ts.map +1 -0
  111. package/dist/utils/cloneObject.d.ts +1 -0
  112. package/dist/utils/cloneObject.d.ts.map +1 -0
  113. package/dist/utils/compact.d.ts +1 -0
  114. package/dist/utils/compact.d.ts.map +1 -0
  115. package/dist/utils/convertToArrayPayload.d.ts +1 -0
  116. package/dist/utils/convertToArrayPayload.d.ts.map +1 -0
  117. package/dist/utils/createSubject.d.ts +1 -0
  118. package/dist/utils/createSubject.d.ts.map +1 -0
  119. package/dist/utils/deepEqual.d.ts +1 -0
  120. package/dist/utils/deepEqual.d.ts.map +1 -0
  121. package/dist/utils/deepMerge.d.ts +1 -0
  122. package/dist/utils/deepMerge.d.ts.map +1 -0
  123. package/dist/utils/fillBooleanArray.d.ts +1 -0
  124. package/dist/utils/fillBooleanArray.d.ts.map +1 -0
  125. package/dist/utils/fillEmptyArray.d.ts +1 -0
  126. package/dist/utils/fillEmptyArray.d.ts.map +1 -0
  127. package/dist/utils/get.d.ts +1 -0
  128. package/dist/utils/get.d.ts.map +1 -0
  129. package/dist/utils/getValidationModes.d.ts +1 -0
  130. package/dist/utils/getValidationModes.d.ts.map +1 -0
  131. package/dist/utils/index.d.ts +1 -0
  132. package/dist/utils/index.d.ts.map +1 -0
  133. package/dist/utils/insert.d.ts +1 -0
  134. package/dist/utils/insert.d.ts.map +1 -0
  135. package/dist/utils/isBoolean.d.ts +1 -0
  136. package/dist/utils/isBoolean.d.ts.map +1 -0
  137. package/dist/utils/isCheckBoxInput.d.ts +1 -0
  138. package/dist/utils/isCheckBoxInput.d.ts.map +1 -0
  139. package/dist/utils/isDateObject.d.ts +1 -0
  140. package/dist/utils/isDateObject.d.ts.map +1 -0
  141. package/dist/utils/isEmptyObject.d.ts +1 -0
  142. package/dist/utils/isEmptyObject.d.ts.map +1 -0
  143. package/dist/utils/isFileInput.d.ts +1 -0
  144. package/dist/utils/isFileInput.d.ts.map +1 -0
  145. package/dist/utils/isFunction.d.ts +1 -0
  146. package/dist/utils/isFunction.d.ts.map +1 -0
  147. package/dist/utils/isHTMLElement.d.ts +1 -0
  148. package/dist/utils/isHTMLElement.d.ts.map +1 -0
  149. package/dist/utils/isKey.d.ts +1 -0
  150. package/dist/utils/isKey.d.ts.map +1 -0
  151. package/dist/utils/isMessage.d.ts +1 -0
  152. package/dist/utils/isMessage.d.ts.map +1 -0
  153. package/dist/utils/isMultipleSelect.d.ts +1 -0
  154. package/dist/utils/isMultipleSelect.d.ts.map +1 -0
  155. package/dist/utils/isNullOrUndefined.d.ts +1 -0
  156. package/dist/utils/isNullOrUndefined.d.ts.map +1 -0
  157. package/dist/utils/isObject.d.ts +1 -0
  158. package/dist/utils/isObject.d.ts.map +1 -0
  159. package/dist/utils/isPrimitive.d.ts +1 -0
  160. package/dist/utils/isPrimitive.d.ts.map +1 -0
  161. package/dist/utils/isRadioInput.d.ts +1 -0
  162. package/dist/utils/isRadioInput.d.ts.map +1 -0
  163. package/dist/utils/isRadioOrCheckbox.d.ts +1 -0
  164. package/dist/utils/isRadioOrCheckbox.d.ts.map +1 -0
  165. package/dist/utils/isRegex.d.ts +1 -0
  166. package/dist/utils/isRegex.d.ts.map +1 -0
  167. package/dist/utils/isSelectInput.d.ts +1 -0
  168. package/dist/utils/isSelectInput.d.ts.map +1 -0
  169. package/dist/utils/isString.d.ts +1 -0
  170. package/dist/utils/isString.d.ts.map +1 -0
  171. package/dist/utils/isUndefined.d.ts +1 -0
  172. package/dist/utils/isUndefined.d.ts.map +1 -0
  173. package/dist/utils/isWeb.d.ts +1 -0
  174. package/dist/utils/isWeb.d.ts.map +1 -0
  175. package/dist/utils/live.d.ts +1 -0
  176. package/dist/utils/live.d.ts.map +1 -0
  177. package/dist/utils/move.d.ts +1 -0
  178. package/dist/utils/move.d.ts.map +1 -0
  179. package/dist/utils/objectHasFunction.d.ts +1 -0
  180. package/dist/utils/objectHasFunction.d.ts.map +1 -0
  181. package/dist/utils/omit.d.ts +1 -0
  182. package/dist/utils/omit.d.ts.map +1 -0
  183. package/dist/utils/omitKeys.d.ts +1 -0
  184. package/dist/utils/omitKeys.d.ts.map +1 -0
  185. package/dist/utils/prepend.d.ts +1 -0
  186. package/dist/utils/prepend.d.ts.map +1 -0
  187. package/dist/utils/remove.d.ts +1 -0
  188. package/dist/utils/remove.d.ts.map +1 -0
  189. package/dist/utils/set.d.ts +1 -0
  190. package/dist/utils/set.d.ts.map +1 -0
  191. package/dist/utils/stringToPath.d.ts +1 -0
  192. package/dist/utils/stringToPath.d.ts.map +1 -0
  193. package/dist/utils/swap.d.ts +1 -0
  194. package/dist/utils/swap.d.ts.map +1 -0
  195. package/dist/utils/unset.d.ts +1 -0
  196. package/dist/utils/unset.d.ts.map +1 -0
  197. package/dist/utils/update.d.ts +1 -0
  198. package/dist/utils/update.d.ts.map +1 -0
  199. package/package.json +18 -14
  200. package/CHANGELOG.md +0 -1311
package/dist/index.d.ts CHANGED
@@ -8,3 +8,4 @@ export * from './useFormContext';
8
8
  export * from './useFormState';
9
9
  export * from './useWatch';
10
10
  export * from './utils';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC"}
@@ -195,7 +195,9 @@ function useWatch(props) {
195
195
  (isObject(fieldValues) && !objectHasFunction(fieldValues))
196
196
  ? Object.assign({}, fieldValues) : Array.isArray(fieldValues)
197
197
  ? [...fieldValues]
198
- : fieldValues);
198
+ : isUndefined(fieldValues)
199
+ ? defaultValue
200
+ : fieldValues);
199
201
  }
200
202
  },
201
203
  });
@@ -235,14 +237,11 @@ function useController(props) {
235
237
  updateMounted(name, true);
236
238
  return () => {
237
239
  const _shouldUnregisterField = control._options.shouldUnregister || shouldUnregister;
238
- if (isArrayField
240
+ isArrayField
239
241
  ? _shouldUnregisterField && !control._stateFlags.action
240
- : _shouldUnregisterField) {
241
- control.unregister(name, { keepDefaultValue: true });
242
- }
243
- else {
244
- updateMounted(name, false);
245
- }
242
+ : _shouldUnregisterField
243
+ ? control.unregister(name)
244
+ : updateMounted(name, false);
246
245
  };
247
246
  }, [name, control, isArrayField, shouldUnregister]);
248
247
  return {
@@ -536,13 +535,13 @@ const useFieldArray = (props) => {
536
535
  control._updateFieldArray(name, updateAt, {
537
536
  argA: index,
538
537
  argB: value,
539
- }, fieldArrayValues, true, false);
538
+ }, fieldArrayValues, true, false, false);
540
539
  };
541
540
  const replace = (value) => {
542
541
  const updatedFieldArrayValuesWithKey = mapIds(convertToArrayPayload(value), keyName);
543
542
  const fieldArrayValues = updateValues(updatedFieldArrayValuesWithKey);
544
543
  setFields(updatedFieldArrayValuesWithKey);
545
- control._updateFieldArray(name, () => updatedFieldArrayValuesWithKey, {}, fieldArrayValues, true, false);
544
+ control._updateFieldArray(name, () => updatedFieldArrayValuesWithKey, {}, fieldArrayValues, true, false, false);
546
545
  };
547
546
  React.useEffect(() => {
548
547
  control._stateFlags.action = false;
@@ -1139,13 +1138,13 @@ function createFormControl(props = {}) {
1139
1138
  }
1140
1139
  return isValid;
1141
1140
  };
1142
- const _updateFieldArray = (name, method, args, values = [], shouldSetValues = true, shouldSetFields = true) => {
1141
+ const _updateFieldArray = (name, method, args, values = [], shouldSetValues = true, shouldSetFields = true, shouldSetError = true) => {
1143
1142
  _stateFlags.action = true;
1144
1143
  if (shouldSetFields && get(_fields, name)) {
1145
1144
  const fieldValues = method(get(_fields, name), args.argA, args.argB);
1146
1145
  shouldSetValues && set(_fields, name, fieldValues);
1147
1146
  }
1148
- if (Array.isArray(get(_formState.errors, name))) {
1147
+ if (shouldSetError && Array.isArray(get(_formState.errors, name))) {
1149
1148
  const errors = method(get(_formState.errors, name), args.argA, args.argB);
1150
1149
  shouldSetValues && set(_formState.errors, name, errors);
1151
1150
  unsetEmptyArray(_formState.errors, name);
@@ -1321,7 +1320,8 @@ function createFormControl(props = {}) {
1321
1320
  if (field) {
1322
1321
  const fieldReference = field._f;
1323
1322
  if (fieldReference) {
1324
- set(_formValues, name, getFieldValueAs(value, fieldReference));
1323
+ !fieldReference.disabled &&
1324
+ set(_formValues, name, getFieldValueAs(value, fieldReference));
1325
1325
  fieldValue =
1326
1326
  isWeb && isHTMLElement(fieldReference.ref) && isNullOrUndefined(value)
1327
1327
  ? ''
@@ -1584,7 +1584,7 @@ function createFormControl(props = {}) {
1584
1584
  _f: radioOrCheckbox
1585
1585
  ? Object.assign(Object.assign({}, field._f), { refs: [...compact(field._f.refs).filter(live), fieldRef], ref: { type: fieldRef.type, name } }) : Object.assign(Object.assign({}, field._f), { ref: fieldRef }),
1586
1586
  });
1587
- !options.disabled && updateValidAndValue(name, false, fieldRef);
1587
+ updateValidAndValue(name, false, fieldRef);
1588
1588
  }
1589
1589
  else {
1590
1590
  field = get(_fields, name, {});
@@ -1702,10 +1702,10 @@ function createFormControl(props = {}) {
1702
1702
  : {}
1703
1703
  : cloneUpdatedValues;
1704
1704
  _fields = {};
1705
- _subjects.watch.next({
1705
+ _subjects.array.next({
1706
1706
  values,
1707
1707
  });
1708
- _subjects.array.next({
1708
+ _subjects.watch.next({
1709
1709
  values,
1710
1710
  });
1711
1711
  }