July 2026
July 18, 2026
What’s Changed
-
Fix custom builder views being bypassed on Filament 4.12+
AdvancedFilterBuilderandMultiSortBuildernow declare their custom views via theprotected string $viewproperty instead of overridinggetView(). - ThegetContainer()->getParentComponent()chains inAdvancedFilterBuilder(getAddAction(),getDeleteAction(),removeFilter()) are replaced with a null-safegetOrGroupBuilder()helper that returns early when the component is not nested inside anor_groupbuilder. - New regression tests intests/Feature/AdvancedFilterBuilderRenderingTest.php(custom view renders instead of the defaultBuilderchrome,deleteaction on theand_groupbuilder, gracefuldeleteon the outeror_groupbuilder) and a rendering test forMultiSortBuilderintests/Feature/MultiSortTest.php.
July 16, 2026
What’s Changed
-
Fix multi-sort ordering while reordering records
- Delegate table sorting to Filament while record reordering is active, ensuring rows are ordered by the configured reorder column. - Preserve the existing Advanced Tables multi-sort state so the user’s previous sort resumes after leaving reorder mode. - Add a Livewire regression test covering a single header sort, reorder mode, and restoration of the prior sort.
- Bump esbuild from 0.25.3 to 0.28.1 Bumps esbuild from 0.25.3 to 0.28.1.
-
Fix filter picker overflow in slide-overs
- Enable Floating UI
shiftandteleportbehavior on the shared filter-builder picker. - Allow wide, multi-column filter pickers to escape narrow modal and slide-over clipping while remaining within the viewport.
- Enable Floating UI
-
Clean up frontend dependencies and asset validation
- remove unused Choices.js, Autoprefixer, Prettier, PostCSS, purge, and script-runner dependencies and configuration - remove the stale, unregistered standalone CSS artifact - retain esbuild for the shipped JavaScript artifact and pin
@tailwindcss/clifor CSS validation - add CI that verifies the JavaScript artifact and compiles the package CSS through a real Filament theme - document the asset-compilation requirement for Panel Builder and standalone Table Builder installations - remove the non-functional Dependabot auto-merge workflow
- remove unused Choices.js, Autoprefixer, Prettier, PostCSS, purge, and script-runner dependencies and configuration - remove the stale, unregistered standalone CSS artifact - retain esbuild for the shipped JavaScript artifact and pin
July 14, 2026
What’s Changed
-
Harden CI supply chain: pin actions to commit SHAs, extend Dependabot config
- Pin all GitHub Actions in workflows to full commit SHAs with version comments - Add
npmecosystem to Dependabot updates - Add a 7-daycooldownto all Dependabot update entries
- Pin all GitHub Actions in workflows to full commit SHAs with version comments - Add
July 4, 2026
What’s Changed
-
Add
advanced-tables-multi-sort-triggerCSS class to Multi-Sort trigger The Multi-Sort trigger button was the only Advanced Tables button without a customadvanced-tables-*class, making it hard to target (e.g. in a guided page tour). Add one viaextraAttributes(), matching the pattern used by the other view actions (advanced-tables-show-view-manager, etc.). - Bump actions/checkout from 6 to 7 Bumps actions/checkout from 6 to 7.
June 2026
June 23, 2026
What’s Changed
-
Fix standalone filter builder crashes and fallback translation config
- Add a standalone config fallback for parameterized filter-builder translations when the plugin is not registered. - Route advanced filter indicator generation through the shared config helper instead of relying only on plugin state. - Cover standalone Table Builder behavior with feature tests for indicator rendering and config-driven translation access.
June 12, 2026
What’s Changed
- Fix changelog
- Fix brittle tests
-
Fix brittle preset view search test
- Pin deterministic auth, matching, and non-matching user emails in PresetViewTest - Prevent defaultSearch(‘John’) from matching Faker-generated emails unexpectedly
-
Fix
default()Preset View being ignored when internal Default View is enabled On a stock install the internal Default View (injected under thedefaultkey) is always markeddefault()and was merged ahead of user Preset Views. BecausegetDefaultPresetViewName()returned the first view whoseisDefault()was true, the internal Default View always won, so a Preset View explicitly marked->default()under another key was silently ignored on mount unless the user disabled the Default View or used thedefaultkey.
May 2026
May 22, 2026
What’s Changed
- Fix empty select filter queries on integer relationship columns Fixes is_empty / is_not_empty handling for text/select-style filters so non-string columns are no longer compared to an empty string. This prevents PostgreSQL errors like invalid input syntax for type bigint when filtering relationship keys such as author.id. Also adds coverage for empty/not-empty behavior across plain text, non-string, relationship, JSON, and relationship JSON filter paths.
May 20, 2026
What’s Changed
- Fix advanced filters with nested json Fixes Advanced Filters when used with nested json columns.
April 2026
April 29, 2026
What’s Changed
- Refine type hints for preset views and tenancy configuration This PR improves type safety and clarity by refining return type hints across the preset views and tenancy concerns, making the codebase more type-strict and better aligned with actual usage patterns.
- Add opt-in parameterised filter builder indicator translations The legacy filter builder indicator strings are assembled by PHP-side concatenation (e.g. “{column} {operator} {value} {unit}”), which forces translators into awkward word orderings — notably French, where “il y a 5 ans” requires :value to sit inside the phrase, not after it.
-
Prevent badge truncation in Favorites Bar Tabs theme on mobile
The badge inside a tab (e.g. count “4” in the “Today” view) could be visually clipped on narrow viewports because the label has
whitespace-nowrapand the surrounding wrapper hasoverflow-hidden, so the badge — the only flex item without shrink protection — would lose width and get cut off by the wrapper. Addshrink-0to both the Filament badge component and the Github theme inline badge<div>, matching the pattern already used inview-manager/label.blade.php. - Bump dependabot/fetch-metadata from 3.0.0 to 3.1.0 Bumps dependabot/fetch-metadata from 3.0.0 to 3.1.0.
April 15, 2026
What’s Changed
-
Fix TypeError in AdvancedFilter when filter row is missing
typekeyArr::exists($collectedFilters, $filter['type'] ?? [])passed[]toarray_key_exists()when a row in anadvanced_filter_builderstate had notypekey (e.g. URL-carried partial state), crashing with a TypeError on PHP 8. Usingnullas the fallback is a valid array-offset type and lets thearray_filterguard correctly drop malformed rows.
April 10, 2026
What’s Changed
-
Add Heroicon type support to icon configuration methods
This PR extends icon configuration methods across multiple plugin concerns to accept
Heroiconinstances in addition to strings and closures, providing more flexible icon customization options.
April 1, 2026
What’s Changed
- Add empty labels array initialization to indicator setup This change adds an explicit empty labels array initialization to the indicator configuration in the AdvancedFilter’s setUp method.
April 1, 2026
What’s Changed
-
Fix TextFilter to handle empty values in advanced filtering
This PR fixes the TextFilter to properly handle empty or null values when applying advanced filters, preventing unnecessary database operations and potential errors when filtering with operators that don’t require values (like
is_not_empty). - Bump dependabot/fetch-metadata from 2.5.0 to 3.0.0 Bumps dependabot/fetch-metadata from 2.5.0 to 3.0.0.
March 2026
March 22, 2026
What’s Changed
- Fix case-insensitive TextFilter for contains, starts_with, and ends_with operators
- fix advanced search loading skeleton
March 14, 2026
What’s Changed
-
Fix user views based off of preset views
This PR fixes the creation and loading of User Views that are based off of preset views. Prior to this, using a presetView that uses
modifyQueryUsing()as the base of a UserView wouldn’t apply the presetView’s modfifications. -
Implement custom trigger actions
This PR provides full action customization following the same pattern as Filament’s
columnManagerTriggerAction(). You can customize any action’s icon, label, tooltip, color, size, and more. Icons can also be fully customized using Filament’s icon registration. See the docs for more information - Update docs for privato
- Feature improved quick filters This PR improves Quick Filters, making them more reliable but also adding support for Advanced Filters as well.
- Feature - Advanced Table Searching Introducing Advanced Table Searching! Advanced Search replaces Filament table’s search field with powerful search constraints and column selection. In addition to the default “contains” search, your users can now search using eight different constraints like “starts with”, “matches”, “ends with”, and more. Users can also select which columns to search, and even use keyboard syntax shortcuts to quickly change the search behavior directly from the search input. Advanced Search is fully integrated with Preset Views, User Views, and Quick Filters.
- Update README.md
- Fix advanced search with multiple columns Fixes and issue with negated searches on columns with multiple search columns.
-
Change search exclude syntax from
!to-for Google-style familiarity Users are accustomed to using-to exclude terms from search engines like Google, GitHub, and Slack. This changes the exclude prefix from!to-to match that widely understood convention. -
Fix PostgreSQL type mismatch in managed default views query
Cast
filament_filter_sets.id(BIGINT) to VARCHAR when comparing againstmanaged_default_views.view(VARCHAR) on PostgreSQL, which enforces strict type checking and rejects cross-type column comparisons. - Fix broken translation references to missing Filament packages
- Improve advanced search feature This PR majorly refactors and improves Advanced Search. Anyone using the original version will need to read the docs and possiby update any Preset View defaultSearch() or saved User Views.
-
Add preserve search and expand default search
This PR adds
->preserveSearch()as an option on a preset view. It also expandsdefaultSearchto allow either a normal search or advanced search to be set on a preset view. - php stan fixes
- Fix default view heroicon error
March 9, 2026
What’s Changed
- Fix broken translation references to missing Filament packages
- Improve advanced search feature This PR majorly refactors and improves Advanced Search. Anyone using the original version will need to read the docs and possiby update any Preset View defaultSearch() or saved User Views.
February 2026
February 27, 2026
What’s Changed
- Fix advanced search with multiple columns Fixes and issue with negated searches on columns with multiple search columns.
-
Change search exclude syntax from
!to-for Google-style familiarity Users are accustomed to using-to exclude terms from search engines like Google, GitHub, and Slack. This changes the exclude prefix from!to-to match that widely understood convention. -
Fix PostgreSQL type mismatch in managed default views query
Cast
filament_filter_sets.id(BIGINT) to VARCHAR when comparing againstmanaged_default_views.view(VARCHAR) on PostgreSQL, which enforces strict type checking and rejects cross-type column comparisons.
February 25, 2026
What’s Changed
-
Fix user views based off of preset views
This PR fixes the creation and loading of User Views that are based off of preset views. Prior to this, using a presetView that uses
modifyQueryUsing()as the base of a UserView wouldn’t apply the presetView’s modfifications. -
Implement custom trigger actions
This PR provides full action customization following the same pattern as Filament’s
columnManagerTriggerAction(). You can customize any action’s icon, label, tooltip, color, size, and more. Icons can also be fully customized using Filament’s icon registration. See the docs for more information - Update docs for privato
- Feature improved quick filters This PR improves Quick Filters, making them more reliable but also adding support for Advanced Filters as well.
- Feature - Advanced Table Searching Introducing Advanced Table Searching! Advanced Search replaces Filament table’s search field with powerful search constraints and column selection. In addition to the default “contains” search, your users can now search using eight different constraints like “starts with”, “matches”, “ends with”, and more. Users can also select which columns to search, and even use keyboard syntax shortcuts to quickly change the search behavior directly from the search input. Advanced Search is fully integrated with Preset Views, User Views, and Quick Filters.
February 18, 2026
What’s Changed
- Update InteractsWithPageTable.php Fixes a breaking change from livewire v4
February 1, 2026
What’s Changed
-
Fix custom page classes
When updating the convienence page classes to support Filament v4’s new namespacing, I accidently broke the implementation for Table Builder. This PR restores functionality for Table Builder and then adds a new page class for Custom Navigation Page. Now there are three options depending on which type of page you have: ## Panel Builder - Custom Resource Page =>
Archilex\AdvancedTables\Livewire\PanelPage- Custom Page =>Archilex\AdvancedTables\Livewire\CustomPage## Table Builder -Archilex\AdvancedTables\Livewire\Page
January 2026
January 30, 2026
What’s Changed
-
Support filament enums in user view resource navigation
This PR adds support to Filament v4’s expanded navigation methods that now support enums such as
getNavigationGroup()andgetNavigationIcon().
January 26, 2026
What’s Changed
- Fix removeTableFilter error Fixes an issue when trying to remove a Query Builder table when also using Advanced Tables.
January 23, 2026
What’s Changed
- Add compatibility for 4.6
- Add user view resource support for custom pages This PR adds support for custom pages in UserViews. It also fixes an issue where extending the plugins PanelPage or Page was using the imports from filament v3.
- Add support for 5.1 Add support for 5.1