Package
filament/schemas
Package Version
v5.6.1
Laravel Version
v13.6.0
Livewire Version
v4.2.4
PHP Version
PHP 8.5.3
Problem description
When a field is set to live() with onBlur: true,
any restrictions on partial rendering configured through partiallyRenderComponentsAfterStateUpdated()
will be ignored if the field is blurred without updating the state.
Expected behavior
The field would partially render the components it's configured to when it loses focus.
The field would not render other components when it loses focus.
Steps to reproduce
- Navigate to the User resource in the reproduction repository
- Create a new User (or Edit the test user)
- In the
belowContent() of both the email and password fields, a Closure is configured to display the value of the user name. However, the name field is set to only partially render the email field.
- Change the
name field
- Have the field lose focus
- Observe how the
email field's belowContent() changed, but password's does not.
- Focus the
name field anew
- Have the field lose focus without changing the state of the field
- Oserve how both the
email and password fields' belowContent() is updated
Reproduction repository (issue will be closed if this is not valid)
https://github.com/gp-lnuff/filament-issue/tree/live-onblur
Relevant log output
Package
filament/schemas
Package Version
v5.6.1
Laravel Version
v13.6.0
Livewire Version
v4.2.4
PHP Version
PHP 8.5.3
Problem description
When a field is set to
live()withonBlur: true,any restrictions on partial rendering configured through
partiallyRenderComponentsAfterStateUpdated()will be ignored if the field is blurred without updating the state.
Expected behavior
The field would partially render the components it's configured to when it loses focus.
The field would not render other components when it loses focus.
Steps to reproduce
belowContent()of both theemailandpasswordfields, aClosureis configured to display the value of the username. However, thenamefield is set to only partially render theemailfield.namefieldemailfield'sbelowContent()changed, butpassword's does not.namefield anewemailandpasswordfields'belowContent()is updatedReproduction repository (issue will be closed if this is not valid)
https://github.com/gp-lnuff/filament-issue/tree/live-onblur
Relevant log output