@inject AuthService Auth
@inject NetworkStatusService NetworkStatus
@implements IDisposable
@code {
private bool collapseNavMenu = true;
private string? NavMenuCssClass => collapseNavMenu ? "collapse" : null;
protected override void OnInitialized()
{
NetworkStatus.StatusChanged += OnStateChanged;
Auth.AuthStateChanged += OnStateChanged;
}
private void OnStateChanged(bool isOnline)
{
InvokeAsync(StateHasChanged);
}
private void OnStateChanged()
{
InvokeAsync(StateHasChanged);
}
private void ToggleNavMenu()
{
collapseNavMenu = !collapseNavMenu;
}
public void Dispose()
{
NetworkStatus.StatusChanged -= OnStateChanged;
Auth.AuthStateChanged -= OnStateChanged;
}
}