Update useForm
types to accept interfaces
#1646
Closed
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.
Previously a bare interface type that does not extend
Record<string, unknown>
was not accepted. This isn't ideal so this PR makes changes such that we are able to accept arbitrary interface types but still get validation when usinguseForm()
. Since we still want to do some validation on the types we use a conditional type in parameter position to validate that the data being passed through is correct. This isn’t the most ideal solution because the errors highlight the entire object instead of individual keys but it is an improvement over the status quo.Fixes #1624
Closes #1626