diff --git a/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogBase.cs b/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogBase.cs index b1568427..7fa14518 100644 --- a/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogBase.cs +++ b/app/MindWork AI Studio/Dialogs/Settings/SettingsDialogBase.cs @@ -1,5 +1,6 @@ using System.Diagnostics.CodeAnalysis; +using AIStudio.Components; using AIStudio.Settings; using AIStudio.Tools.Services; @@ -7,20 +8,14 @@ using Microsoft.AspNetCore.Components; namespace AIStudio.Dialogs.Settings; -public abstract class SettingsDialogBase : ComponentBase, IMessageBusReceiver, IDisposable +public abstract class SettingsDialogBase : MSGComponentBase { [CascadingParameter] protected IMudDialogInstance MudDialog { get; set; } = null!; - [Inject] - protected SettingsManager SettingsManager { get; init; } = null!; - [Inject] protected IDialogService DialogService { get; init; } = null!; - [Inject] - protected MessageBus MessageBus { get; init; } = null!; - [Inject] protected RustService RustService { get; init; } = null!; @@ -32,9 +27,7 @@ public abstract class SettingsDialogBase : ComponentBase, IMessageBusReceiver, I /// protected override async Task OnInitializedAsync() { - // Register this component with the message bus: - this.MessageBus.RegisterComponent(this); - this.MessageBus.ApplyFilters(this, [], [ Event.CONFIGURATION_CHANGED ]); + this.ApplyFilters([], [ Event.CONFIGURATION_CHANGED ]); this.UpdateProviders(); this.UpdateEmbeddingProviders(); @@ -59,12 +52,10 @@ public abstract class SettingsDialogBase : ComponentBase, IMessageBusReceiver, I foreach (var provider in this.SettingsManager.ConfigurationData.EmbeddingProviders) this.availableEmbeddingProviders.Add(new (provider.Name, provider.Id)); } - - #region Implementation of IMessageBusReceiver - public string ComponentName => nameof(Settings); - - public Task ProcessMessage(ComponentBase? sendingComponent, Event triggeredEvent, TMsg? data) + #region Overrides of MSGComponentBase + + protected override Task ProcessIncomingMessage(ComponentBase? sendingComponent, Event triggeredEvent, T? data) where T : default { switch (triggeredEvent) { @@ -72,23 +63,9 @@ public abstract class SettingsDialogBase : ComponentBase, IMessageBusReceiver, I this.StateHasChanged(); break; } - + return Task.CompletedTask; } - public Task ProcessMessageWithResult(ComponentBase? sendingComponent, Event triggeredEvent, TPayload? data) - { - return Task.FromResult(default); - } - - #endregion - - #region Implementation of IDisposable - - public void Dispose() - { - this.MessageBus.Unregister(this); - } - #endregion } \ No newline at end of file