27 lines
800 B
Text
27 lines
800 B
Text
@using LANCommander.SDK.Models
|
|
@using Semver
|
|
@inject UpdateService UpdateService
|
|
@inject ModalService ModalService
|
|
|
|
@code {
|
|
protected override async Task OnInitializedAsync()
|
|
{
|
|
UpdateService.OnUpdateAvailable += OnUpdateAvailable;
|
|
}
|
|
|
|
async Task OnUpdateAvailable(CheckForUpdateResponse response)
|
|
{
|
|
var confirmUpdate = await ModalService.ConfirmAsync(new ConfirmOptions
|
|
{
|
|
OkText = "Update Now",
|
|
CancelText = "Later",
|
|
Title = "Launcher Update",
|
|
Content = $"An update for v{response.Version} is available"
|
|
});
|
|
|
|
if (confirmUpdate && SemVersion.TryParse(response.Version, SemVersionStyles.Any, out var version))
|
|
{
|
|
await UpdateService.UpdateAsync(version);
|
|
}
|
|
}
|
|
}
|