mirror of
				https://github.com/MindWorkAI/AI-Studio.git
				synced 2025-11-04 11:40:21 +00:00 
			
		
		
		
	Refactored page paths
This commit is contained in:
		
							parent
							
								
									77513df6cc
								
							
						
					
					
						commit
						9fa2fbac32
					
				@ -51,12 +51,12 @@ public partial class MainLayout : LayoutComponentBase, IMessageBusReceiver, IDis
 | 
				
			|||||||
    
 | 
					    
 | 
				
			||||||
    private static readonly IReadOnlyCollection<NavBarItem> NAV_ITEMS = new List<NavBarItem>
 | 
					    private static readonly IReadOnlyCollection<NavBarItem> NAV_ITEMS = new List<NavBarItem>
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        new("Home", Icons.Material.Filled.Home, Color.Default, "/", true),
 | 
					        new("Home", Icons.Material.Filled.Home, Color.Default, Pages.Path.HOME, true),
 | 
				
			||||||
        new("Chat", Icons.Material.Filled.Chat, Color.Default, "/chat", false),
 | 
					        new("Chat", Icons.Material.Filled.Chat, Color.Default, Pages.Path.CHAT, false),
 | 
				
			||||||
        new("Assistants", Icons.Material.Filled.Apps, Color.Default ,"/assistants", false),
 | 
					        new("Assistants", Icons.Material.Filled.Apps, Color.Default, Pages.Path.ASSISTANTS, false),
 | 
				
			||||||
        new("Supporters", Icons.Material.Filled.Favorite, Color.Error ,"/supporters", false),
 | 
					        new("Supporters", Icons.Material.Filled.Favorite, Color.Error, Pages.Path.SUPPORTERS, false),
 | 
				
			||||||
        new("About", Icons.Material.Filled.Info, Color.Default ,"/about", false),
 | 
					        new("About", Icons.Material.Filled.Info, Color.Default, Pages.Path.ABOUT, false),
 | 
				
			||||||
        new("Settings", Icons.Material.Filled.Settings, Color.Default ,"/settings", false),
 | 
					        new("Settings", Icons.Material.Filled.Settings, Color.Default, Pages.Path.SETTINGS, false),
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    #region Overrides of ComponentBase
 | 
					    #region Overrides of ComponentBase
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
@page "/about"
 | 
					@attribute [Route(Path.ABOUT)]
 | 
				
			||||||
@using AIStudio.Tools
 | 
					@using AIStudio.Tools
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<MudText Typo="Typo.h3" Class="mb-2">About MindWork AI Studio</MudText>
 | 
					<MudText Typo="Typo.h3" Class="mb-2">About MindWork AI Studio</MudText>
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
@page "/assistant/agenda"
 | 
					@attribute [Route(Path.ASSISTANT_AGENDA)]
 | 
				
			||||||
@using AIStudio.Tools
 | 
					@using AIStudio.Tools
 | 
				
			||||||
@inherits AssistantBaseCore
 | 
					@inherits AssistantBaseCore
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
@page "/assistants"
 | 
					@attribute [Route(Path.ASSISTANTS)]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<MudText Typo="Typo.h3" Class="mb-2 mr-3">
 | 
					<MudText Typo="Typo.h3" Class="mb-2 mr-3">
 | 
				
			||||||
    Assistants
 | 
					    Assistants
 | 
				
			||||||
@ -10,25 +10,25 @@
 | 
				
			|||||||
        General
 | 
					        General
 | 
				
			||||||
    </MudText>
 | 
					    </MudText>
 | 
				
			||||||
    <MudStack Row="@true" Wrap="@Wrap.Wrap" Class="mb-3">
 | 
					    <MudStack Row="@true" Wrap="@Wrap.Wrap" Class="mb-3">
 | 
				
			||||||
        <AssistantBlock Name="Text Summarizer" Description="Using a LLM to summarize a given text." Icon="@Icons.Material.Filled.TextSnippet" Link="/assistant/summarizer"/>
 | 
					        <AssistantBlock Name="Text Summarizer" Description="Using a LLM to summarize a given text." Icon="@Icons.Material.Filled.TextSnippet" Link="@Path.ASSISTANT_SUMMARIZER"/>
 | 
				
			||||||
        <AssistantBlock Name="Translation" Description="Translate text into another language." Icon="@Icons.Material.Filled.Translate" Link="/assistant/translation"/>
 | 
					        <AssistantBlock Name="Translation" Description="Translate text into another language." Icon="@Icons.Material.Filled.Translate" Link="@Path.ASSISTANT_TRANSLATION"/>
 | 
				
			||||||
        <AssistantBlock Name="Grammar & Spelling" Description="Check grammar and spelling of a given text." Icon="@Icons.Material.Filled.Edit" Link="/assistant/grammar-spelling"/>
 | 
					        <AssistantBlock Name="Grammar & Spelling" Description="Check grammar and spelling of a given text." Icon="@Icons.Material.Filled.Edit" Link="@Path.ASSISTANT_GRAMMAR_SPELLING"/>
 | 
				
			||||||
        <AssistantBlock Name="Rewrite & Improve" Description="Rewrite and improve a given text for a chosen style." Icon="@Icons.Material.Filled.Edit" Link="/assistant/rewrite-improve"/>
 | 
					        <AssistantBlock Name="Rewrite & Improve" Description="Rewrite and improve a given text for a chosen style." Icon="@Icons.Material.Filled.Edit" Link="@Path.ASSISTANT_REWRITE"/>
 | 
				
			||||||
    </MudStack>
 | 
					    </MudStack>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <MudText Typo="Typo.h4" Class="mb-2 mr-3 mt-6">
 | 
					    <MudText Typo="Typo.h4" Class="mb-2 mr-3 mt-6">
 | 
				
			||||||
        Business
 | 
					        Business
 | 
				
			||||||
    </MudText>
 | 
					    </MudText>
 | 
				
			||||||
    <MudStack Row="@true" Wrap="@Wrap.Wrap" Class="mb-3">
 | 
					    <MudStack Row="@true" Wrap="@Wrap.Wrap" Class="mb-3">
 | 
				
			||||||
        <AssistantBlock Name="Agenda Planner" Description="Generate an agenda for a given meeting, seminar, etc." Icon="@Icons.Material.Filled.CalendarToday" Link="/assistant/agenda"/>
 | 
					        <AssistantBlock Name="Agenda Planner" Description="Generate an agenda for a given meeting, seminar, etc." Icon="@Icons.Material.Filled.CalendarToday" Link="@Path.ASSISTANT_AGENDA"/>
 | 
				
			||||||
        <AssistantBlock Name="Icon Finder" Description="Using a LLM to find an icon for a given context." Icon="@Icons.Material.Filled.FindInPage" Link="/assistant/icons"/>
 | 
					        <AssistantBlock Name="Icon Finder" Description="Using a LLM to find an icon for a given context." Icon="@Icons.Material.Filled.FindInPage" Link="@Path.ASSISTANT_ICON_FINDER"/>
 | 
				
			||||||
    </MudStack>
 | 
					    </MudStack>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <MudText Typo="Typo.h4" Class="mb-2 mr-3 mt-6">
 | 
					    <MudText Typo="Typo.h4" Class="mb-2 mr-3 mt-6">
 | 
				
			||||||
        Software Engineering
 | 
					        Software Engineering
 | 
				
			||||||
    </MudText>
 | 
					    </MudText>
 | 
				
			||||||
    <MudStack Row="@true" Wrap="@Wrap.Wrap" Class="mb-3">
 | 
					    <MudStack Row="@true" Wrap="@Wrap.Wrap" Class="mb-3">
 | 
				
			||||||
        <AssistantBlock Name="Coding" Description="Get coding and debugging support from a LLM." Icon="@Icons.Material.Filled.Code" Link="/assistant/coding"/>
 | 
					        <AssistantBlock Name="Coding" Description="Get coding and debugging support from a LLM." Icon="@Icons.Material.Filled.Code" Link="@Path.ASSISTANT_CODING"/>
 | 
				
			||||||
    </MudStack>
 | 
					    </MudStack>
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
</InnerScrolling>
 | 
					</InnerScrolling>
 | 
				
			||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
@page "/chat"
 | 
					@attribute [Route(Path.CHAT)]
 | 
				
			||||||
@using AIStudio.Chat
 | 
					@using AIStudio.Chat
 | 
				
			||||||
@using AIStudio.Settings.DataModel
 | 
					@using AIStudio.Settings.DataModel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -250,11 +250,11 @@ public partial class Chat : MSGComponentBase, IAsyncDisposable
 | 
				
			|||||||
            string chatPath;
 | 
					            string chatPath;
 | 
				
			||||||
            if (this.chatThread.WorkspaceId == Guid.Empty)
 | 
					            if (this.chatThread.WorkspaceId == Guid.Empty)
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                chatPath = Path.Join(SettingsManager.DataDirectory, "tempChats", this.chatThread.ChatId.ToString());
 | 
					                chatPath = System.IO.Path.Join(SettingsManager.DataDirectory, "tempChats", this.chatThread.ChatId.ToString());
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            else
 | 
					            else
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
                chatPath = Path.Join(SettingsManager.DataDirectory, "workspaces", this.chatThread.WorkspaceId.ToString(), this.chatThread.ChatId.ToString());
 | 
					                chatPath = System.IO.Path.Join(SettingsManager.DataDirectory, "workspaces", this.chatThread.WorkspaceId.ToString(), this.chatThread.ChatId.ToString());
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            
 | 
					            
 | 
				
			||||||
            await this.workspaces.DeleteChat(chatPath, askForConfirmation: false, unloadChat: true);
 | 
					            await this.workspaces.DeleteChat(chatPath, askForConfirmation: false, unloadChat: true);
 | 
				
			||||||
@ -327,12 +327,12 @@ public partial class Chat : MSGComponentBase, IAsyncDisposable
 | 
				
			|||||||
        if (this.chatThread!.WorkspaceId == Guid.Empty)
 | 
					        if (this.chatThread!.WorkspaceId == Guid.Empty)
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            // Case: The chat is stored in the temporary storage:
 | 
					            // Case: The chat is stored in the temporary storage:
 | 
				
			||||||
            await this.workspaces.DeleteChat(Path.Join(SettingsManager.DataDirectory, "tempChats", this.chatThread.ChatId.ToString()), askForConfirmation: false, unloadChat: false);
 | 
					            await this.workspaces.DeleteChat(System.IO.Path.Join(SettingsManager.DataDirectory, "tempChats", this.chatThread.ChatId.ToString()), askForConfirmation: false, unloadChat: false);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        else
 | 
					        else
 | 
				
			||||||
        {
 | 
					        {
 | 
				
			||||||
            // Case: The chat is stored in a workspace.
 | 
					            // Case: The chat is stored in a workspace.
 | 
				
			||||||
            await this.workspaces.DeleteChat(Path.Join(SettingsManager.DataDirectory, "workspaces", this.chatThread.WorkspaceId.ToString(), this.chatThread.ChatId.ToString()), askForConfirmation: false, unloadChat: false);
 | 
					            await this.workspaces.DeleteChat(System.IO.Path.Join(SettingsManager.DataDirectory, "workspaces", this.chatThread.WorkspaceId.ToString(), this.chatThread.ChatId.ToString()), askForConfirmation: false, unloadChat: false);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
        this.chatThread!.WorkspaceId = workspaceId;
 | 
					        this.chatThread!.WorkspaceId = workspaceId;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
@page "/assistant/coding"
 | 
					@attribute [Route(Path.ASSISTANT_CODING)]
 | 
				
			||||||
@inherits AssistantBaseCore
 | 
					@inherits AssistantBaseCore
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<MudExpansionPanels Class="mb-3">
 | 
					<MudExpansionPanels Class="mb-3">
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,5 @@
 | 
				
			|||||||
@using AIStudio.Tools
 | 
					@using AIStudio.Tools
 | 
				
			||||||
@page "/assistant/grammar-spelling"
 | 
					@attribute [Route(Path.ASSISTANT_GRAMMAR_SPELLING)]
 | 
				
			||||||
@inherits AssistantBaseCore
 | 
					@inherits AssistantBaseCore
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<MudTextField T="string" @bind-Text="@this.inputText" Validation="@this.ValidateText" AdornmentIcon="@Icons.Material.Filled.DocumentScanner" Adornment="Adornment.Start" Label="Your input to check" Variant="Variant.Outlined" Lines="6" AutoGrow="@true" MaxLines="12" Class="mb-3" UserAttributes="@USER_INPUT_ATTRIBUTES"/>
 | 
					<MudTextField T="string" @bind-Text="@this.inputText" Validation="@this.ValidateText" AdornmentIcon="@Icons.Material.Filled.DocumentScanner" Adornment="Adornment.Start" Label="Your input to check" Variant="Variant.Outlined" Lines="6" AutoGrow="@true" MaxLines="12" Class="mb-3" UserAttributes="@USER_INPUT_ATTRIBUTES"/>
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
@page "/"
 | 
					@attribute [Route(Path.HOME)]
 | 
				
			||||||
@using AIStudio.Tools
 | 
					@using AIStudio.Tools
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<MudImage Src="svg/banner.svg" />
 | 
					<MudImage Src="svg/banner.svg" />
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
@page "/assistant/icons"
 | 
					@attribute [Route(Path.ASSISTANT_ICON_FINDER)]
 | 
				
			||||||
@inherits AssistantBaseCore
 | 
					@inherits AssistantBaseCore
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<MudTextField T="string" @bind-Text="@this.inputContext" Validation="@this.ValidatingContext" AdornmentIcon="@Icons.Material.Filled.Description" Adornment="Adornment.Start" Label="Your context" Variant="Variant.Outlined" Lines="3" AutoGrow="@true" MaxLines="12" Class="mb-3" UserAttributes="@USER_INPUT_ATTRIBUTES"/>
 | 
					<MudTextField T="string" @bind-Text="@this.inputContext" Validation="@this.ValidatingContext" AdornmentIcon="@Icons.Material.Filled.Description" Adornment="Adornment.Start" Label="Your context" Variant="Variant.Outlined" Lines="3" AutoGrow="@true" MaxLines="12" Class="mb-3" UserAttributes="@USER_INPUT_ATTRIBUTES"/>
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										19
									
								
								app/MindWork AI Studio/Components/Pages/Path.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								app/MindWork AI Studio/Components/Pages/Path.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,19 @@
 | 
				
			|||||||
 | 
					namespace AIStudio.Components.Pages;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public static class Path
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    public const string HOME = "/";
 | 
				
			||||||
 | 
					    public const string CHAT = "/chat";
 | 
				
			||||||
 | 
					    public const string ABOUT = "/about";
 | 
				
			||||||
 | 
					    public const string ASSISTANTS = "/assistants";
 | 
				
			||||||
 | 
					    public const string SETTINGS = "/settings";
 | 
				
			||||||
 | 
					    public const string SUPPORTERS = "/supporters";
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    public const string ASSISTANT_TRANSLATION = "/assistant/translation";
 | 
				
			||||||
 | 
					    public const string ASSISTANT_REWRITE = "/assistant/rewrite-improve";
 | 
				
			||||||
 | 
					    public const string ASSISTANT_ICON_FINDER = "/assistant/icons";
 | 
				
			||||||
 | 
					    public const string ASSISTANT_GRAMMAR_SPELLING = "/assistant/grammar-spelling";
 | 
				
			||||||
 | 
					    public const string ASSISTANT_SUMMARIZER = "/assistant/summarizer";
 | 
				
			||||||
 | 
					    public const string ASSISTANT_CODING = "/assistant/coding";
 | 
				
			||||||
 | 
					    public const string ASSISTANT_AGENDA = "/assistant/agenda";
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@ -1,5 +1,5 @@
 | 
				
			|||||||
@using AIStudio.Tools
 | 
					@using AIStudio.Tools
 | 
				
			||||||
@page "/assistant/rewrite-improve"
 | 
					@attribute [Route(Path.ASSISTANT_REWRITE)]
 | 
				
			||||||
@inherits AssistantBaseCore
 | 
					@inherits AssistantBaseCore
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<MudTextField T="string" @bind-Text="@this.inputText" Validation="@this.ValidateText" AdornmentIcon="@Icons.Material.Filled.DocumentScanner" Adornment="Adornment.Start" Label="Your input to improve" Variant="Variant.Outlined" Lines="6" AutoGrow="@true" MaxLines="12" Class="mb-3" UserAttributes="@USER_INPUT_ATTRIBUTES"/>
 | 
					<MudTextField T="string" @bind-Text="@this.inputText" Validation="@this.ValidateText" AdornmentIcon="@Icons.Material.Filled.DocumentScanner" Adornment="Adornment.Start" Label="Your input to improve" Variant="Variant.Outlined" Lines="6" AutoGrow="@true" MaxLines="12" Class="mb-3" UserAttributes="@USER_INPUT_ATTRIBUTES"/>
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
@page "/settings"
 | 
					@attribute [Route(Path.SETTINGS)]
 | 
				
			||||||
@using AIStudio.Components.Pages.Coding
 | 
					@using AIStudio.Components.Pages.Coding
 | 
				
			||||||
@using AIStudio.Components.Pages.TextSummarizer
 | 
					@using AIStudio.Components.Pages.TextSummarizer
 | 
				
			||||||
@using AIStudio.Provider
 | 
					@using AIStudio.Provider
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
@page "/Supporters"
 | 
					@attribute [Route(Path.SUPPORTERS)]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<MudText Typo="Typo.h3" Class="mb-2">Supporters</MudText>
 | 
					<MudText Typo="Typo.h3" Class="mb-2">Supporters</MudText>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
@page "/assistant/summarizer"
 | 
					@attribute [Route(Path.ASSISTANT_SUMMARIZER)]
 | 
				
			||||||
@using AIStudio.Tools
 | 
					@using AIStudio.Tools
 | 
				
			||||||
@inherits AssistantBaseCore
 | 
					@inherits AssistantBaseCore
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
@page "/assistant/translation"
 | 
					@attribute [Route(Path.ASSISTANT_TRANSLATION)]
 | 
				
			||||||
@using AIStudio.Tools
 | 
					@using AIStudio.Tools
 | 
				
			||||||
@inherits AssistantBaseCore
 | 
					@inherits AssistantBaseCore
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user