LANCommander/LANCommander.Launcher/UI/Components/UpdateChecker.razor

30 lines
992 B
Text
Raw Permalink Normal View History

@using LANCommander.SDK.Models
@using Semver
@inject UpdateService UpdateService
@inject ModalService ModalService
@inject LocalizationService LocalizationService
@code {
protected override async Task OnInitializedAsync()
{
UpdateService.OnUpdateAvailable += OnUpdateAvailable;
}
async Task OnUpdateAvailable(CheckForUpdateResponse response)
{
var confirmUpdate = await ModalService.ConfirmAsync(new ConfirmOptions
{
OkText = LocalizationService.GetString("UpdateNow"),
CancelText = LocalizationService.GetString("Later"),
Title = LocalizationService.GetString("LauncherUpdate"),
Content = LocalizationService.GetString("UpdateAvailableMessage", response.Version),
2024-07-30 01:03:18 -05:00
Centered = true
});
if (confirmUpdate && SemVersion.TryParse(response.Version, SemVersionStyles.Any, out var version))
{
await UpdateService.UpdateAsync(version);
}
}
}