mirror of
https://github.com/MindWorkAI/AI-Studio.git
synced 2025-07-04 09:42:57 +00:00
Improved the loading of some components that require data fetching (#512)
This commit is contained in:
parent
3587f547b5
commit
181ba07d2d
@ -47,14 +47,17 @@ public partial class Workspaces : MSGComponentBase
|
|||||||
// - Those initial tree items cannot have children
|
// - Those initial tree items cannot have children
|
||||||
// - When assigning the tree items to the MudTreeViewItem component, we must set the Value property to the value of the item
|
// - When assigning the tree items to the MudTreeViewItem component, we must set the Value property to the value of the item
|
||||||
//
|
//
|
||||||
await this.LoadTreeItems();
|
// We won't await the loading of the tree items here,
|
||||||
|
// to avoid blocking the UI thread:
|
||||||
|
_ = this.LoadTreeItems();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
private async Task LoadTreeItems()
|
private async Task LoadTreeItems()
|
||||||
{
|
{
|
||||||
var workspacesNode = new TreeItemData<ITreeItem>
|
this.treeItems.Clear();
|
||||||
|
this.treeItems.Add(new TreeItemData<ITreeItem>
|
||||||
{
|
{
|
||||||
Expanded = this.ExpandRootNodes,
|
Expanded = this.ExpandRootNodes,
|
||||||
Expandable = true,
|
Expandable = true,
|
||||||
@ -68,9 +71,16 @@ public partial class Workspaces : MSGComponentBase
|
|||||||
Path = "root",
|
Path = "root",
|
||||||
Children = await this.LoadWorkspaces(),
|
Children = await this.LoadWorkspaces(),
|
||||||
},
|
},
|
||||||
};
|
});
|
||||||
|
|
||||||
var tempChatNode = new TreeItemData<ITreeItem>
|
this.treeItems.Add(new TreeItemData<ITreeItem>
|
||||||
|
{
|
||||||
|
Expandable = false,
|
||||||
|
Value = new TreeDivider(),
|
||||||
|
});
|
||||||
|
|
||||||
|
await this.InvokeAsync(this.StateHasChanged);
|
||||||
|
this.treeItems.Add(new TreeItemData<ITreeItem>
|
||||||
{
|
{
|
||||||
Expanded = this.ExpandRootNodes,
|
Expanded = this.ExpandRootNodes,
|
||||||
Expandable = true,
|
Expandable = true,
|
||||||
@ -84,16 +94,9 @@ public partial class Workspaces : MSGComponentBase
|
|||||||
Path = "temp",
|
Path = "temp",
|
||||||
Children = await this.LoadTemporaryChats(),
|
Children = await this.LoadTemporaryChats(),
|
||||||
},
|
},
|
||||||
};
|
|
||||||
|
|
||||||
this.treeItems.Clear();
|
|
||||||
this.treeItems.Add(workspacesNode);
|
|
||||||
this.treeItems.Add(new TreeItemData<ITreeItem>
|
|
||||||
{
|
|
||||||
Expandable = false,
|
|
||||||
Value = new TreeDivider(),
|
|
||||||
});
|
});
|
||||||
this.treeItems.Add(tempChatNode);
|
|
||||||
|
await this.InvokeAsync(this.StateHasChanged);
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task<IReadOnlyCollection<TreeItemData<ITreeItem>>> LoadTemporaryChats()
|
private async Task<IReadOnlyCollection<TreeItemData<ITreeItem>>> LoadTemporaryChats()
|
||||||
|
@ -66,7 +66,10 @@ public partial class About : MSGComponentBase
|
|||||||
this.logPaths = await this.RustService.GetLogPaths();
|
this.logPaths = await this.RustService.GetLogPaths();
|
||||||
|
|
||||||
await base.OnInitializedAsync();
|
await base.OnInitializedAsync();
|
||||||
await this.DeterminePandocVersion();
|
|
||||||
|
// Determine the Pandoc version may take some time, so we start it here
|
||||||
|
// without waiting for the result:
|
||||||
|
_ = this.DeterminePandocVersion();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
@ -19,10 +19,12 @@ public partial class Home : MSGComponentBase
|
|||||||
|
|
||||||
protected override async Task OnInitializedAsync()
|
protected override async Task OnInitializedAsync()
|
||||||
{
|
{
|
||||||
await this.ReadLastChangeAsync();
|
|
||||||
await base.OnInitializedAsync();
|
await base.OnInitializedAsync();
|
||||||
|
|
||||||
this.InitializeAdvantagesItems();
|
this.InitializeAdvantagesItems();
|
||||||
|
|
||||||
|
// Read the last change content asynchronously
|
||||||
|
// without blocking the UI thread:
|
||||||
|
_ = this.ReadLastChangeAsync();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void InitializeAdvantagesItems()
|
private void InitializeAdvantagesItems()
|
||||||
@ -61,6 +63,8 @@ public partial class Home : MSGComponentBase
|
|||||||
var latest = Changelog.LOGS.MaxBy(n => n.Build);
|
var latest = Changelog.LOGS.MaxBy(n => n.Build);
|
||||||
using var response = await this.HttpClient.GetAsync($"changelog/{latest.Filename}");
|
using var response = await this.HttpClient.GetAsync($"changelog/{latest.Filename}");
|
||||||
this.LastChangeContent = await response.Content.ReadAsStringAsync();
|
this.LastChangeContent = await response.Content.ReadAsStringAsync();
|
||||||
|
|
||||||
|
await this.InvokeAsync(this.StateHasChanged);
|
||||||
}
|
}
|
||||||
|
|
||||||
private const string QUICK_START_GUIDE =
|
private const string QUICK_START_GUIDE =
|
||||||
|
@ -32,7 +32,7 @@ public sealed class EnterpriseEnvironmentService(ILogger<EnterpriseEnvironmentSe
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
logger.LogInformation("Starting update of the enterprise environment.");
|
logger.LogInformation("Start updating of the enterprise environment.");
|
||||||
|
|
||||||
var enterpriseRemoveConfigId = await rustService.EnterpriseEnvRemoveConfigId();
|
var enterpriseRemoveConfigId = await rustService.EnterpriseEnvRemoveConfigId();
|
||||||
var isPlugin2RemoveInUse = PluginFactory.AvailablePlugins.Any(plugin => plugin.Id == enterpriseRemoveConfigId);
|
var isPlugin2RemoveInUse = PluginFactory.AvailablePlugins.Any(plugin => plugin.Id == enterpriseRemoveConfigId);
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
# v0.9.49, build 224 (2025-06-xx xx:xx UTC)
|
# v0.9.49, build 224 (2025-06-xx xx:xx UTC)
|
||||||
- Added a library by Nils Kruthoff (`nilskruthoff`) that allows AI Studio to read PowerPoint files. This feature is not yet available in the UI, but it will soon be available. Thanks, Nils, for that great contribution.
|
- Added a library by Nils Kruthoff (`nilskruthoff`) that allows AI Studio to read PowerPoint files. This feature is not yet available in the UI, but it will soon be available. Thanks, Nils, for that great contribution.
|
||||||
|
- Improved the loading of some components that require data fetching, resulting in a more responsive UI.
|
||||||
- Changed the timestamp display to use the local datetime format for the chats and assistants.
|
- Changed the timestamp display to use the local datetime format for the chats and assistants.
|
||||||
- Upgraded to Rust 1.88.0.
|
- Upgraded to Rust 1.88.0.
|
||||||
- Upgraded MudBlazor to version 8.8.0.
|
- Upgraded MudBlazor to version 8.8.0.
|
||||||
|
Loading…
Reference in New Issue
Block a user