From 65b0a4a15d315ad15e1feb4b7439175afec4491b Mon Sep 17 00:00:00 2001 From: Thorsten Sommer Date: Sun, 23 Mar 2025 15:49:49 +0100 Subject: [PATCH] Refactored nav item collection --- .../Layout/MainLayout.razor.cs | 48 ++++++++----------- 1 file changed, 21 insertions(+), 27 deletions(-) diff --git a/app/MindWork AI Studio/Layout/MainLayout.razor.cs b/app/MindWork AI Studio/Layout/MainLayout.razor.cs index 16000a43..aeeb5c1b 100644 --- a/app/MindWork AI Studio/Layout/MainLayout.razor.cs +++ b/app/MindWork AI Studio/Layout/MainLayout.razor.cs @@ -117,33 +117,7 @@ public partial class MainLayout : LayoutComponentBase, IMessageBusReceiver, IDis private void LoadNavItems() { - var palette = this.ColorTheme.GetCurrentPalette(this.SettingsManager); - var isWriterModePreviewEnabled = PreviewFeatures.PRE_WRITER_MODE_2024.IsEnabled(this.SettingsManager); - if (!isWriterModePreviewEnabled) - { - this.navItems = new List - { - new("Home", Icons.Material.Filled.Home, palette.DarkLighten, palette.GrayLight, Routes.HOME, true), - new("Chat", Icons.Material.Filled.Chat, palette.DarkLighten, palette.GrayLight, Routes.CHAT, false), - new("Assistants", Icons.Material.Filled.Apps, palette.DarkLighten, palette.GrayLight, Routes.ASSISTANTS, false), - new("Supporters", Icons.Material.Filled.Favorite, palette.Error.Value, "#801a00", Routes.SUPPORTERS, false), - new("About", Icons.Material.Filled.Info, palette.DarkLighten, palette.GrayLight, Routes.ABOUT, false), - new("Settings", Icons.Material.Filled.Settings, palette.DarkLighten, palette.GrayLight, Routes.SETTINGS, false), - }; - } - else - { - this.navItems = new List - { - new("Home", Icons.Material.Filled.Home, palette.DarkLighten, palette.GrayLight, Routes.HOME, true), - new("Chat", Icons.Material.Filled.Chat, palette.DarkLighten, palette.GrayLight, Routes.CHAT, false), - new("Assistants", Icons.Material.Filled.Apps, palette.DarkLighten, palette.GrayLight, Routes.ASSISTANTS, false), - new("Writer", Icons.Material.Filled.Create, palette.DarkLighten, palette.GrayLight, Routes.WRITER, false), - new("Supporters", Icons.Material.Filled.Favorite, palette.Error.Value, "#801a00", Routes.SUPPORTERS, false), - new("About", Icons.Material.Filled.Info, palette.DarkLighten, palette.GrayLight, Routes.ABOUT, false), - new("Settings", Icons.Material.Filled.Settings, palette.DarkLighten, palette.GrayLight, Routes.SETTINGS, false), - }; - } + this.navItems = new List(this.GetNavItems()); } #endregion @@ -196,6 +170,26 @@ public partial class MainLayout : LayoutComponentBase, IMessageBusReceiver, IDis } #endregion + + private IEnumerable GetNavItems() + { + var palette = this.ColorTheme.GetCurrentPalette(this.SettingsManager); + + yield return new("Home", Icons.Material.Filled.Home, palette.DarkLighten, palette.GrayLight, Routes.HOME, true); + yield return new("Chat", Icons.Material.Filled.Chat, palette.DarkLighten, palette.GrayLight, Routes.CHAT, false); + yield return new("Assistants", Icons.Material.Filled.Apps, palette.DarkLighten, palette.GrayLight, Routes.ASSISTANTS, false); + + if (PreviewFeatures.PRE_WRITER_MODE_2024.IsEnabled(this.SettingsManager)) + yield return new("Writer", Icons.Material.Filled.Create, palette.DarkLighten, palette.GrayLight, Routes.WRITER, false); + + yield return new("Supporters", Icons.Material.Filled.Favorite, palette.Error.Value, "#801a00", Routes.SUPPORTERS, false); + yield return new("About", Icons.Material.Filled.Info, palette.DarkLighten, palette.GrayLight, Routes.ABOUT, false); + + if (PreviewFeatures.PRE_PLUGINS_2025.IsEnabled(this.SettingsManager)) + yield return new("Plugins", Icons.Material.Filled.Extension, palette.DarkLighten, palette.GrayLight, Routes.PLUGINS, false); + + yield return new("Settings", Icons.Material.Filled.Settings, palette.DarkLighten, palette.GrayLight, Routes.SETTINGS, false); + } private async Task DismissUpdate() {