From 6a31b1bfa7e86b62347b04c4773372044103f633 Mon Sep 17 00:00:00 2001 From: Thorsten Sommer Date: Tue, 7 Jan 2025 20:51:54 +0100 Subject: [PATCH] Added validation to the directory selection component --- .../Assistants/ERI/AssistantERI.razor | 2 +- .../Assistants/ERI/AssistantERI.razor.cs | 11 +++++++++++ .../Components/SelectDirectory.razor | 1 + .../Components/SelectDirectory.razor.cs | 3 +++ 4 files changed, 16 insertions(+), 1 deletion(-) diff --git a/app/MindWork AI Studio/Assistants/ERI/AssistantERI.razor b/app/MindWork AI Studio/Assistants/ERI/AssistantERI.razor index 5e008e25..61497f99 100644 --- a/app/MindWork AI Studio/Assistants/ERI/AssistantERI.razor +++ b/app/MindWork AI Studio/Assistants/ERI/AssistantERI.razor @@ -346,4 +346,4 @@ else - + diff --git a/app/MindWork AI Studio/Assistants/ERI/AssistantERI.razor.cs b/app/MindWork AI Studio/Assistants/ERI/AssistantERI.razor.cs index 85347316..ca5b4f98 100644 --- a/app/MindWork AI Studio/Assistants/ERI/AssistantERI.razor.cs +++ b/app/MindWork AI Studio/Assistants/ERI/AssistantERI.razor.cs @@ -739,6 +739,17 @@ public partial class AssistantERI : AssistantBaseCore return null; } + + private string? ValidateDirectory(string path) + { + if(!this.writeToFilesystem) + return null; + + if(string.IsNullOrWhiteSpace(path)) + return "Please provide a base directory for the ERI server to write files to."; + + return null; + } private string GetMultiSelectionAuthText(List selectedValues) { diff --git a/app/MindWork AI Studio/Components/SelectDirectory.razor b/app/MindWork AI Studio/Components/SelectDirectory.razor index 95f09d69..29a0fc8f 100644 --- a/app/MindWork AI Studio/Components/SelectDirectory.razor +++ b/app/MindWork AI Studio/Components/SelectDirectory.razor @@ -4,6 +4,7 @@ Text="@this.Directory" Label="@this.Label" ReadOnly="@true" + Validation="@this.Validation" Adornment="Adornment.Start" AdornmentIcon="@Icons.Material.Filled.Folder" UserAttributes="@SPELLCHECK_ATTRIBUTES" diff --git a/app/MindWork AI Studio/Components/SelectDirectory.razor.cs b/app/MindWork AI Studio/Components/SelectDirectory.razor.cs index ec4f6cd3..79bc18ef 100644 --- a/app/MindWork AI Studio/Components/SelectDirectory.razor.cs +++ b/app/MindWork AI Studio/Components/SelectDirectory.razor.cs @@ -21,6 +21,9 @@ public partial class SelectDirectory : ComponentBase [Parameter] public string DirectoryDialogTitle { get; set; } = "Select Directory"; + [Parameter] + public Func Validation { get; set; } = _ => null; + [Inject] private SettingsManager SettingsManager { get; init; } = null!;