Repository navigation
chore(deps): update dependency react-hook-form to v7.89.0 - #987
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
Contributor
📦 Bundle Size Report
Size Limits
Largest Files (Top 5)
View All Files (282 total)
✅ Bundle size check passed |
Contributor
📊 Coverage Report⚪ Coverage unchanged
Detailed BreakdownLines Coverage
Statements Coverage
Functions Coverage
Branches Coverage
✅ Coverage check passed |
Contributor
|
Deploy preview for remote-flows ready!
Deployed with vercel-action |
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
May 9, 2026 04:55
451558f to
ac635a8
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
2 times, most recently
from
May 18, 2026 09:35
aa2fbf7 to
c09b954
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
May 23, 2026 01:56
c09b954 to
a4b808f
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
May 28, 2026 16:17
a4b808f to
107c8f2
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
2 times, most recently
from
June 3, 2026 18:53
a5179a9 to
9e830b5
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
June 7, 2026 13:47
9e830b5 to
fe8cd27
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
2 times, most recently
from
June 15, 2026 02:01
f2c310b to
286c188
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
June 20, 2026 06:02
286c188 to
12e2f6e
Compare
Contributor
|
Deploy preview for adp-cost-calculator ready!
Deployed with vercel-action |
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
June 27, 2026 04:38
12e2f6e to
865dc66
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
July 12, 2026 06:33
865dc66 to
03c8b01
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
2 times, most recently
from
July 21, 2026 01:56
abbc240 to
75594f3
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
2 times, most recently
from
July 25, 2026 04:55
d0536da to
923ec1c
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
August 1, 2026 02:14
9ffba13 to
28aecc9
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
2 times, most recently
from
August 8, 2026 05:58
661832d to
9d482ac
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
3 times, most recently
from
August 15, 2026 06:06
ecbb61b to
2915daa
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
2 times, most recently
from
August 28, 2026 23:07
1892abf to
ca42513
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
2 times, most recently
from
September 6, 2026 05:57
61bbe42 to
7ea09ea
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
3 times, most recently
from
September 10, 2026 22:41
145c974 to
2b61b27
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
2 times, most recently
from
September 19, 2026 00:58
6854244 to
8ed022c
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 8ed022c. Configure here.
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
3 times, most recently
from
September 26, 2026 03:16
0fc51bc to
7f8599f
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
2 times, most recently
from
October 3, 2026 05:47
833e81c to
7a43d1e
Compare
renovate
Bot
force-pushed
the
renovate/react-hook-form-7.x
branch
from
October 5, 2026 14:32
7a43d1e to
617f819
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

This PR contains the following updates:
7.73.1→7.89.0Release Notes
react-hook-form/react-hook-form (react-hook-form)
v7.89.0Compare Source
Changed
@types/reactpeer dependencyFixed
validateFieldcallingsetCustomValidityon refs that don't implement it under native validationvalidaterunning a stale function instead of the latest onevalidate) being applied afterresetinonChangeandhandleSubmitdelayErrortimers for nested paths not being cancelled when a parent validates clean or is reset viaresetFieldgetValues(names, { dirtyFields })returning every row of a field array instead of only the marked entriestouchedFieldsis not subscribeduseFieldArrayemittingtouchedFieldsin form state updates when unnecessaryuseFieldArraymarking the form dirty when the array default isnullsetValuewithshouldValidatenot revalidatingdepssetValuewithshouldValidatenot triggering validation for a field array rootregisteroptions at runtime still being applieduseControllervalidatingrequiredagainst the input value instead of the controlled valueisValidnot recomputing when theerrorsprop is emptiedgetFieldState(name, formState)with a resolver afterreset()v7.88.0Compare Source
Added
<ErrorMessage />component for rendering a field's validation errorFixed
setValuedirty state comparison ignoringvalueAs*/setValueAstransformsdelayErrortimers not being cancelled when a parent is cleared or unregistereddelayErrorerrors coming back once the pending timer firescriteriaModenot refreshing when form options are updated at runtimeresetFieldleaving stale validating state for the fieldresetnot clearingisValidatingandvalidatingFields, and ignoringkeepIsValidatingreplace()leaving errors and touched state for removed rowsremove()leaking deleted values onto surviving itemshandleSubmitapplying a stale resolver result afterresethandleSubmitdropping resolver-reported root errors on submitresettriggerdropping registered nested errors when targeting their parenttriggersetting a parent error when the target has only nested resolver errorsuseWatchcompute cache not being initialized with the initial outputflatten/jsonToFormDatanot preservingFileListand not skippingundefinedschemaErrorLookupreporting nested containers as exact-name errorsunregisternot recomputingisValidatingafter clearingvalidatingFieldsunregisterstripping a kept value from the submit payloaditerateFieldsByActiononly breaking out of one loop levelsetErrortypes from a previous validation surviving an overwritereact-serverbuild not being publishedvalidateFieldcallingsetCustomValidityper key in validate-object modeuseFieldArraynot focusing a checkbox or radio in the appended rowuseFieldArraynot reconciling stale fields after anActivitysubtree reconnectsuseFormnever reconciling when anActivitysubtree is hidden on its first rendergetFieldStatenot readingisValidatingfrom the supplied form stateuseFormStatenot re-subscribing whencontrolchangesresetwithkeepValuesleavingdirtyFieldsout of sync withisDirtycloneObjectnot guardingBlobbeforeinstanceofv7.87.0Compare Source
Added
shouldTouchoption fortrigger()OpaqueTypesregistry for opaque leaf typesFixed
useController().field.onChange()-like APIsControllerunder a null parent submittingundefinedinstead of a valueERR_MODULE_NOT_FOUNDresolvingreact-hook-formdue to areact-serverdeclaration (Next.js builds)useWatchnever reconciling when anActivitysubtree is hidden on its first renderresetFieldnot recomputingisValidfor subscribe-only consumersgenerateWatchOutputignoringdefaultValuefor an array of namesuseFormStatenever reconciling when anActivitysubtree is hidden on its first renderv7.86.0Compare Source
Added
getErrorsmethodPerformance
createFormControlunregisterwithout subscribersFixed
flattendiscardingFileandBlobvalues instead of treating them as leaf nodesvalidateFieldnot passing the field error tosetCustomValiditywhencriteriaModeisallhasValidationtreating falsy but valid values (min: 0,max: 0,minLength: 0,maxLength: 0,required: '') as no validationsetValuetargeting a nested leaf not notifying aControllerregistered on a field array item rootsetValuesnot updating fields registered under an object or array valueuseWatchreturning a stale value on name change when the new value isnullunregisterinvertingkeepDirtywhen broadcastingisDirtyv7.85.0Compare Source
Added
<Activity />Fixed
getFieldStateerror resolution from a field pathuseWatchdiscardinguseForm({ defaultValues })in favor of its owndefaultValuebefore the form mountssetValueemitting a duplicatevaluesstate notification for fields without a native input refuseFieldArrayroot-level error (errors.name.root) being lost onappend/prepend/insert/removemin/maxvalidation being skipped forvalueAsDatefieldsv7.84.0Compare Source
Improvements
handleSubmitreturns the typed result of theonValidcallback instead of discarding it<Form />supports a function-basedaction(Server Action style) in addition to URL-string actionsFixed
reset()withresetOptions.keepDirtyValuesfreezing clean sibling fields in a nested object when another field in that object is dirtyFieldArrayandFormStatetype exportssetValuesnot notifyinguseFieldArraysubscribers, leaving rendered fields stalev7.83.0Compare Source
Improvements
getEventValueto handle file inputsFixed
clearErrors()dirtyFieldsreference stabilityuseControllernot re-subscribingonChange/onBlurwhencontrolchangesundefinedv7.82.0Compare Source
Added
delayErroroption forsetValueto delay validation error updatesFixed
resetDefaultValuesthrough form contextsetValuewithshouldDirtynot updating dirty state correctly when the form is disableddirtyFieldsboolean values for registered array fieldsFieldArraycomponent exportPerformance
getDirtyFieldsperformance, especially for larger forms and deeply nested valuesv7.81.0Compare Source
Added
FieldArraycomponent built onuseFieldArrayfor controlled field-array renderingFixed
clearErrorschanging thenamevalue fromform.subscriberesettriggeringsubscribewith the latest name instead ofundefinedsetValuesleaving stale elements behind when shrinking a field arrayflattenpreservingDatevalues as leaf nodesuseFieldArraymin length validation error changing location in theerrorsobjectuseControllernot reflecting a cleared parent object in controlled fieldsSecurity
unset()against prototype-path traversal (__proto__/constructor/prototype), matching the existingset()guardPerformance
useFieldArrayresetv7.80.0Compare Source
Added
disabledprop support for individual fields withinuseFieldArrayFixed
deepEqualincorrectly treating empty array[]and empty plain object{}as equalPerformance
onChange,setValid, dirty checking,setValue, andsetValuesperformancev7.79.0Compare Source
Added
disabledoption touseFieldArrayFixed
ControlleronChangepromise return typedeepEqualfalse positives with shared object referencesshouldUseNativeValidationbehavior for radio groupscreateFormControlstability with fast refresh in dev modeStrictModevalue preservation during remountformState.errorsreactivity with React compilerv7.78.0Compare Source
Fixed
Controllerfields afterresetwithout rerender (RN issue #13455)useFormState().isDirtyrace with async resolver inonChangemodevaluesprop overdefaultValueswhenshouldUnregisteris truedeepEqualfor empty non-plain objectsTypes
dirtyFieldstyping for field arrays with undefined entriesv7.77.0Compare Source
Added
resetDefaultValuesAPIFixed
isDirtyinsubscribepayload afterreset(..., { keepValues: true })shouldUnregisterreset({})behavior requiring double-call to take effectFieldArrayerrors overriding nested fieldsSecurity
get()against prototype-path traversal (__proto__/constructor/prototype)Performance
v7.76.1Compare Source
Fixed
setValueupdatesNaNas empty whenvalueAsNumberistrueinvalidateFieldsetValuespassoptionsparameter through to enable validationsetValuesemit whole-form change without stalename/typePerformance
setValuesskip redundant per-field deep clonessetValuesthreadskipClonethroughsetFieldValuev7.76.0Compare Source
Added
isDirtysync withdirtyFieldsstateFixed
formState.defaultValueswhenuseFieldArrayandwatchare used togethertrigger()setValueupdatesuseFieldArrayremoveleaves array with empty object when usingvaluespropControllerfields withshouldUnregistersetValuesupdates to mountedControllerfieldsappend({ obj: null })silently replaced bydefaultValuesafterremove()isValidatingreactivity whenvalidatingFieldsis not subscribedv7.75.0Compare Source
Added
getDirtyFieldsto prune empty fieldsFixed
setValuesinFormProvidercontext valueuseWatchre-render when unrelated field validation occursisDirtyafter re-registering a previously unregistered fieldv7.74.0Compare Source
Added
setValuesAPIFixed
useControllername changesNaNas empty whenvalueAsNumberistrueinvalidateFieldConfiguration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.