leek/filament-header-filters
Add inline filters to Filament table column headers. Attach any BaseFilter (selects, date pickers, min/max ranges, custom schemas) as a richer alternative to individual searchable fields. Works with Filament v4/v5, PHP 8.2+.
Group inside the table's own filters form, but Filament's schema renderer wraps every top-level schema component in its own .fi-grid-col grid item, which still occupied a grid row (and a row-gap) per header filter. With several withHeaderFilter() columns, these empty rows pushed the "Apply filters" button down by a large, unexplained gap. New CSS rules — scoped to Filament's filters wrappers across every layout (dropdown, modal, and above/below/before/after-content) — now hide the empty .fi-grid-col wrapper too. No PHP changes, so removeTableFilter() keeps working as fixed in v2.0.23. (#5, thanks @x-adam)->default()) could not be dismissed. Two causes: Filament caches the panel filters form in bootedInteractsWithTable() before the header filters are pushed onto the table, so removeTableFilter() looked the filter up in a schema that didn't contain it; and the panel-form groups for header filters were schema-hidden(), which also makes them invisible to getComponentByStatePath(). The panel filters form is now re-cached after header filters register, and their panel groups are CSS-hidden instead of schema-hidden so Filament can find and reset their fields.+N badge to remove hidden selections, and option rows/checkboxes use pointer cursors on hover.+N count. The count width is included during measurement, so wider counts do not create a second overflow after layout.How can I help you explore Laravel packages today?