Added about page to show metadata

This commit is contained in:
Thorsten Sommer 2024-05-21 18:57:45 +02:00
parent 3b7d8a4db4
commit e60a8d5b3c
Signed by: tsommer
GPG Key ID: 371BBA77A02C0108
3 changed files with 43 additions and 1 deletions

View File

@ -11,6 +11,9 @@
<MudTooltip Text="Chats" Placement="Placement.Right">
<MudNavLink Href="/chat" Icon="@Icons.Material.Filled.Chat">Chats</MudNavLink>
</MudTooltip>
<MudTooltip Text="About" Placement="Placement.Right">
<MudNavLink Href="/about" Icon="@Icons.Material.Filled.Info">About</MudNavLink>
</MudTooltip>
<MudTooltip Text="Settings" Placement="Placement.Right">
<MudNavLink Href="/settings" Icon="@Icons.Material.Filled.Settings">Settings</MudNavLink>
</MudTooltip>

View File

@ -1 +1,22 @@
@page "/About"
@page "/about"
<MudText Typo="Typo.h3" Class="mb-2">About MindWork AI Studio</MudText>
<MudCard>
<MudCardHeader>
<MudText Typo="Typo.h6">Versions</MudText>
</MudCardHeader>
<MudCardContent>
<MudText>
The following list shows the versions of the MindWork AI Studio, the used compilers, build time, etc.:
</MudText>
<MudList Clickable="@true">
<MudListItem Icon="@Icons.Material.Outlined.Apps" Text="@VersionApp"/>
<MudListItem Icon="@Icons.Material.Outlined.Timer" Text="@BuildTime"/>
<MudListItem Icon="@Icons.Material.Outlined.Code" Text="@VersionDotnetSdk"/>
<MudListItem Icon="@Icons.Material.Outlined.SystemUpdate" Text="@VersionDotnet"/>
<MudListItem Icon="@Icons.Material.Outlined.Code" Text="@VersionRust"/>
<MudListItem Icon="@Icons.Material.Outlined.Code" Text="@MudBlazorVersion"/>
<MudListItem Icon="@Icons.Material.Outlined.Code" Text="@TauriVersion"/>
</MudList>
</MudCardContent>
</MudCard>

View File

@ -1,7 +1,25 @@
using System.Reflection;
using Microsoft.AspNetCore.Components;
namespace AIStudio.Components.Pages;
public partial class About : ComponentBase
{
private static readonly Assembly ASSEMBLY = Assembly.GetExecutingAssembly();
private static readonly MetaDataAttribute META_DATA = ASSEMBLY.GetCustomAttribute<MetaDataAttribute>()!;
private static string VersionDotnet => $"Used .NET compiler: v{META_DATA.DotnetVersion}";
private static string VersionDotnetSdk => $"Used .NET SDK: v{META_DATA.DotnetSdkVersion}";
private static string VersionRust => $"Used Rust compiler: v{META_DATA.RustVersion}";
private static string VersionApp => $"MindWork AI Studio: v{META_DATA.Version} (commit {META_DATA.AppCommitHash}, build {META_DATA.BuildNum})";
private static string BuildTime => $"Build time: {META_DATA.BuildTime}";
private static string MudBlazorVersion => $"MudBlazor: v{META_DATA.MudBlazorVersion}";
private static string TauriVersion => $"Tauri: v{META_DATA.TauriVersion}";
}