feat(form-core): Validation on first and consequent attempts#1286
feat(form-core): Validation on first and consequent attempts#1286theVedanta wants to merge 2 commits into
Conversation
…on first-submission and consequent submissions
|
View your CI Pipeline Execution ↗ for commit 9559bc1.
☁️ Nx Cloud last updated this comment at |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #1286 +/- ##
==========================================
+ Coverage 88.32% 88.83% +0.51%
==========================================
Files 27 28 +1
Lines 1199 1272 +73
Branches 315 333 +18
==========================================
+ Hits 1059 1130 +71
- Misses 125 127 +2
Partials 15 15 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
Thanks for the PR! However I'm not entirely sure this is the right direction. I see it quite confusing to define a submit validator and then a flag to have a different validator... only if it's the first attempt.
What approach are we covering with this new api? |
That's totally fair. I honestly think that checking submission attempts and defining a behaviour for validation would be quite verbose and this proves to be an alternative. React Hook Form has a similar API as mentioned in the issue referenced. However, if you think that this kind of an option is not required in the tanstack-form, that would be understandable. |
| ? this.options.validationOnFirstAttempt ?? 'submit' | ||
| : this.options.validationOnConsequentAttempts ?? 'submit'; |
There was a problem hiding this comment.
for me something like validationType and revalidationType sound more intuitive
There was a problem hiding this comment.
Alright I'll seek some approval about this and let you know!
Balastrong
left a comment
There was a problem hiding this comment.
I'd probably not move forward with this. I see value in adding those flags, but:
- the same behaviour can be implemented in user-land with a single if
- they're too specific on a single use case
- if we allow for that, then we should add so many other flags and logic for everyone's individual needs which means paying a lot in maintenance on the long run
Thanks anyway, if we see more demand in the future we might think of a different API to handle that :)
Enables functionality like:
This is in reference with issue #1272
All kinds of criticism, API-related edits, structural edits, etc. are welcome!
The current approach is quite verbose and adds an option in the
formOptionsthat could be attributed to an object. However, since I don't know what we can attribute it to, keeping this style of options open.Let me know if the functionality seems ok and we can work on documentation/writing tests.