fix: always synchronize invalid attribute regardless of required #8884
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.
Description
Currently, FormItem synchronizes the
invalid
attribute only when the field is marked asrequired
. However, this behavior seems incorrect, as required is not the only case where users may want to apply styles based on the invalid state. The current implementation also conflicts with server-side validation, as it sets the invalid state based on the result of the client-sidecheckValidity()
method. This doesn't work in the Flow component, where the invalid state is managed by the server.This PR refactors FormItem to synchronize the
invalid
attribute based exclusively on the presence of theinvalid
attribute on the field, without callingcheckValidity()
and regardless of the required state.Fixes vaadin/flow-components#7246
Type of change