Filament Menu Builder 2.0 supports Filament 4 and 5. Please read the upgrade guide before upgrading from 1.x.
Added
- Item types for links, text, named routes and Eloquent records. Add your own by extending
ItemType, offer them to some menus or users withvisible(), and change their form. - Route and record URLs are resolved when the menu is rendered, so they follow your routes, your records and the current domain.
Menu::tree()returns the menu with translated titles, resolved URLs and active state. Trees can be filtered, used for breadcrumbs withactiveTrail()and shared with Inertia as JSON.<x-filament-menu-builder::menu>Blade component.- Filament tenancy support (#143) and Filament 4 support.
- Items can be hidden, duplicated, moved up and down, indented and given sub-items from their menu. Menus can be duplicated with their items.
- Items whose route or record no longer exists are hidden from your site and flagged in the panel.
- Locations are assigned in the menu form.
- Factories for
MenuandMenuItem.
Changed
- Models, table names, translations, tenancy and cache settings moved to
config/filament-menu-builder.php. - Menu panels are replaced by item types, and
MenuPanelablebyMenuLinkable. - Items are added from an "Add item" menu above the tree.
- The plugin ships its own stylesheet. A custom theme is no longer required.
Fixed
- Item actions only change items of the menu being edited and check the menu's policy.
- Script URLs, unknown icons and missing route parameters are rejected.
- Text items no longer show link fields (#95).
- The editor works on screens from 320px wide.
Full changelog: v1.2.0...v2.0.0