@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(); } }