using AIStudio.Dialogs.Settings; using AIStudio.Tools; using AIStudio.Tools.ToolCallingSystem; using Microsoft.AspNetCore.Components; namespace AIStudio.Components.Settings; public partial class SettingsPanelTools : SettingsPanelBase { [Inject] private ToolRegistry ToolRegistry { get; init; } = null!; private IReadOnlyList items = []; protected override async Task OnInitializedAsync() { await base.OnInitializedAsync(); this.items = await this.ToolRegistry.GetCatalogAsync(this.ToolRegistry.GetAllDefinitions()); } private async Task OpenSettings(string toolId) { var parameters = new DialogParameters { { x => x.ToolId, toolId }, }; var dialog = await this.DialogService.ShowAsync(null, parameters, Dialogs.DialogOptions.FULLSCREEN); await dialog.Result; this.items = await this.ToolRegistry.GetCatalogAsync(this.ToolRegistry.GetAllDefinitions()); this.StateHasChanged(); } }