Filament v4.12.2 Is Out — Here's What Changed
Released on 22 July 2026, Filament v4.12.2 is a focused patch release that resolves 19 issues reported by the community. No new features are introduced; the goal is stability and polish across forms, tables, navigation, and accessibility.
Form Component Fixes
Several form-related bugs received attention in this release.
Toggle helper text visibility — When a Toggle field used inlineLabel(), live(), and had a false value, the helperText was incorrectly hidden. This is now resolved.
Builder block picker null array keys — The Builder component could crash when block definitions produced null array keys. The fix prevents null keys from being used in the block picker.
Builder / Repeater / RepeatableEntry item cache — Item caching was not correctly keyed on state, which could cause stale renders. The cache is now based on the actual component state.
Spatie Media Library reordering in Repeater — Drag-to-reorder inside a Repeater backed by Spatie Media Library was broken and has been corrected.
MorphToSelect crash in live Repeater — Adding a new item to a live() Repeater that contained a MorphToSelect field triggered a crash. This edge case is now handled gracefully.
Markdown editor minHeight() ignored when maxHeight() is set — Setting both constraints on a Markdown editor caused minHeight() to be disregarded. Both values are now respected independently.
CodeMirror refresh on visibility change — The CodeMirror instance powering the Markdown editor was not refreshing when the editor became visible (e.g., inside a tab). It now reinitialises correctly.
OptionState accepts Stringable — OptionState previously required a plain string. It now accepts any Stringable object, making it more flexible when working with value objects or enums.
Table UI Consistency
Two visual fixes land for the table component:
- Action buttons in the table toolbar are now the same height as the search bar, eliminating the awkward size mismatch.
- The
fi-ta-header-toolbarelement now enforces a minimum height, preventing layout collapse when the toolbar is sparsely populated. - Table header height consistency and button loading height have also been normalised.
Navigation and Configuration Context
A fix ensures that the configuration context is preserved when mounting navigation. Previously, switching between panels or mounting navigation dynamically could lose panel-specific configuration.
Accessibility Improvements
- The non-native date/time picker panel now has accessible names, improving screen-reader support.
- The focused skip link is now visible, fixing a regression that made keyboard navigation harder.
- Modal focus restoration no longer causes unwanted scrolling when a modal closes.
BackedEnum Tab Badge Icons
Tab badge icons sourced from BackedEnum cases were not rendering correctly. This is now fixed.
Non-Interactive Relation Manager Generation
Generating a non-interactive relation manager without an existing relationship no longer throws an error.
Facade Doc Block Correction
The Filament facade's PHPDoc block has been updated to match the actual method signatures, improving IDE autocompletion accuracy.
Spanish Translations Updated
Spanish locale strings have been refreshed by community contributor @luisprmat.
Key Takeaways
- Toggle + inlineLabel + live + false value: helper text is now always visible.
- Builder block picker: null array keys are blocked at the source.
- Repeater item cache: keyed on state, preventing stale UI.
- MorphToSelect in live Repeater: no longer crashes on item add.
- Markdown editor:
minHeight()andmaxHeight()now coexist correctly. - Table toolbar: button heights and minimum toolbar height are consistent.
- Accessibility: skip link, date picker ARIA names, and modal scroll all improved.
How to Upgrade
Run the following command in your Laravel project:
composer update filament/filament
No configuration changes or migrations are required for this patch release.