[PR #1850] [MERGED] feat: Add mixed navigation type with admin-configurable defaults #1608

Closed
opened 2026-02-04 20:01:10 +03:00 by OVERLORD · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/pelican-dev/panel/pull/1850
Author: @PalmarHealer
Created: 10/30/2025
Status: Merged
Merged: 10/31/2025
Merged by: @notAreYouScared

Base: mainHead: palmarhealer/add-third-navbar-option


📝 Commits (5)

  • 96554e6 Add support for mixed navigation type and default navigation configuration
  • d2a64cb Add spaces to top navigation customization in AppPanelProvider and PanelProvider, and remove unused import in EditProfile.
  • 93b0dd1 set topbar properly
  • b0c8390 satisfy pint
  • 4af82ff remove redundant option

📊 Changes

7 files changed (+38 additions, -11 deletions)

View changed files

📝 app/Enums/CustomizationKey.php (+1 -1)
📝 app/Filament/Admin/Pages/Settings.php (+9 -0)
📝 app/Filament/Pages/Auth/EditProfile.php (+12 -6)
📝 app/Providers/Filament/PanelProvider.php (+10 -2)
📝 config/panel.php (+1 -0)
📝 lang/en/admin/setting.php (+2 -0)
📝 lang/en/profile.php (+3 -2)

📄 Description

Adds a new "mixed" navigation type that combines sidebar navigation with topbar functionality (like it was before #1789), and allows admins to set the default navigation type for new users.

Changes

  • Navigation Types: Extends navigation options from boolean (sidebar/topbar) to three distinct types:

    • sidebar: Traditional sidebar navigation (default)
    • topbar: Full top navigation layout
    • mixed: Sidebar navigation with topbar enabled (best of both worlds)
  • Admin Configuration:

    • Added FILAMENT_DEFAULT_NAVIGATION setting in admin settings panel
    • New users will inherit the admin-configured default navigation type
    • Setting stored in config/panel.php as filament.default-navigation
  • User Customization:

    • Updated user profile customization to include all three navigation options
    • Added backward compatibility for existing boolean values (auto-converts to string types)
    • Panel Providers:
    • Updated PanelProvider.php to handle string-based navigation types
    • Updated AppPanelProvider.php to support mixed mode
    • Maintains backward compatibility with boolean values (truetopbar, falsesidebar)

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/pelican-dev/panel/pull/1850 **Author:** [@PalmarHealer](https://github.com/PalmarHealer) **Created:** 10/30/2025 **Status:** ✅ Merged **Merged:** 10/31/2025 **Merged by:** [@notAreYouScared](https://github.com/notAreYouScared) **Base:** `main` ← **Head:** `palmarhealer/add-third-navbar-option` --- ### 📝 Commits (5) - [`96554e6`](https://github.com/pelican-dev/panel/commit/96554e689b7e87facef475425a4e1c1e5f635ae2) Add support for mixed navigation type and default navigation configuration - [`d2a64cb`](https://github.com/pelican-dev/panel/commit/d2a64cbe1c3246a4a679d6169985e3a60fabdfe8) Add spaces to top navigation customization in AppPanelProvider and PanelProvider, and remove unused import in EditProfile. - [`93b0dd1`](https://github.com/pelican-dev/panel/commit/93b0dd128373300fec810e354e780544cbf4945c) set topbar properly - [`b0c8390`](https://github.com/pelican-dev/panel/commit/b0c8390b3a0853653520704d89705f9fa588bc24) satisfy pint - [`4af82ff`](https://github.com/pelican-dev/panel/commit/4af82ffe7e68da793b381448b02ad8dac4ec0ae4) remove redundant option ### 📊 Changes **7 files changed** (+38 additions, -11 deletions) <details> <summary>View changed files</summary> 📝 `app/Enums/CustomizationKey.php` (+1 -1) 📝 `app/Filament/Admin/Pages/Settings.php` (+9 -0) 📝 `app/Filament/Pages/Auth/EditProfile.php` (+12 -6) 📝 `app/Providers/Filament/PanelProvider.php` (+10 -2) 📝 `config/panel.php` (+1 -0) 📝 `lang/en/admin/setting.php` (+2 -0) 📝 `lang/en/profile.php` (+3 -2) </details> ### 📄 Description Adds a new "mixed" navigation type that combines sidebar navigation with topbar functionality (like it was before #1789), and allows admins to set the default navigation type for new users. ## Changes - **Navigation Types**: Extends navigation options from boolean (sidebar/topbar) to three distinct types: - `sidebar`: Traditional sidebar navigation (default) - `topbar`: Full top navigation layout - `mixed`: Sidebar navigation with topbar enabled (best of both worlds) - **Admin Configuration**: - Added `FILAMENT_DEFAULT_NAVIGATION` setting in admin settings panel - New users will inherit the admin-configured default navigation type - Setting stored in `config/panel.php` as `filament.default-navigation` - **User Customization**: - Updated user profile customization to include all three navigation options - Added backward compatibility for existing boolean values (auto-converts to string types) - **Panel Providers**: - Updated `PanelProvider.php` to handle string-based navigation types - Updated `AppPanelProvider.php` to support mixed mode - Maintains backward compatibility with boolean values (`true` → `topbar`, `false` → `sidebar`) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
OVERLORD added the pull-request label 2026-02-04 20:01:10 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/panel#1608