Filament v4.12.2 Released: Bug Fixes for Toggle, Builder, Repeater, and More
Filament #filament #laravel #php #bug-fix #forms #accessibility

Filament v4.12.2 Released: Bug Fixes for Toggle, Builder, Repeater, and More

3 min read Mohamed Said Mohamed Said

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 StringableOptionState 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-toolbar element 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.

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() and maxHeight() 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.


View the full release notes on GitHub

Found this useful?

Frequently Asked Questions

3 questions
Q01 What was the Toggle helper text bug fixed in Filament v4.12.2?
When a Toggle field used inlineLabel(), live(), and had a value of false, the helperText was incorrectly hidden. Filament v4.12.2 ensures the helper text is always rendered regardless of the toggle's boolean state.
Q02 Why was the Repeater item cache causing stale renders before v4.12.2?
The item cache for Builder, Repeater, and RepeatableEntry components was not keyed on the component's actual state, so cached items could persist even after state changes. The fix keys the cache on state, ensuring renders always reflect current data.
Q03 Does upgrading to Filament v4.12.2 require any database migrations or config changes?
No. v4.12.2 is a patch release containing only bug fixes. You can upgrade by running `composer update filament/filament` without any additional migration or configuration steps.

Continue reading

More Articles

View all