2024-07-29 20:25:46 -05:00
|
|
|
@using LANCommander.SDK.Models
|
|
|
|
|
@using Semver
|
2024-07-25 19:21:52 -05:00
|
|
|
@inject UpdateService UpdateService
|
|
|
|
|
@inject ModalService ModalService
|
|
|
|
|
|
|
|
|
|
@code {
|
|
|
|
|
protected override async Task OnInitializedAsync()
|
|
|
|
|
{
|
|
|
|
|
UpdateService.OnUpdateAvailable += OnUpdateAvailable;
|
|
|
|
|
}
|
|
|
|
|
|
2024-07-29 20:25:46 -05:00
|
|
|
async Task OnUpdateAvailable(CheckForUpdateResponse response)
|
2024-07-25 19:21:52 -05:00
|
|
|
{
|
|
|
|
|
var confirmUpdate = await ModalService.ConfirmAsync(new ConfirmOptions
|
|
|
|
|
{
|
|
|
|
|
OkText = "Update Now",
|
|
|
|
|
CancelText = "Later",
|
|
|
|
|
Title = "Launcher Update",
|
2024-07-30 01:03:18 -05:00
|
|
|
Content = $"An update for v{response.Version} is available. Do you want to download and install?",
|
|
|
|
|
Centered = true
|
2024-07-25 19:21:52 -05:00
|
|
|
});
|
|
|
|
|
|
2024-07-29 23:51:56 -05:00
|
|
|
if (confirmUpdate && SemVersion.TryParse(response.Version, SemVersionStyles.Any, out var version))
|
2024-07-25 19:21:52 -05:00
|
|
|
{
|
2024-07-29 23:51:56 -05:00
|
|
|
await UpdateService.UpdateAsync(version);
|
2024-07-25 19:21:52 -05:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|