@page "/"
@using Shogi.Contracts.Types
@using System.Net.WebSockets
@using System.Text
@inject ModalService modalService
@inject AccountManager AccountManager
@inject AccountState Account
@**@
@if (welcomeModalIsVisible)
{
}
@code {
bool welcomeModalIsVisible = false;
string activeSessionName = string.Empty;
ClientWebSocket socket = new ClientWebSocket();
protected override async Task OnInitializedAsync()
{
Account.LoginChangedEvent += OnLoginChanged;
var success = await AccountManager.TryLoginSilentAsync();
if (!success)
{
welcomeModalIsVisible = true;
}
}
private void OnLoginChanged(object? sender, LoginEventArgs args)
{
welcomeModalIsVisible = args.User == null;
StateHasChanged();
}
private void OnChangeSession(SessionMetadata s)
{
activeSessionName = s.Name;
StateHasChanged();
}
}