@using System.Text @if (LocalStorageWrapper.Settings.DeveloperSettings.EnableLogViewers) { Logs
        @_stringBuilder
    
} @code { StringBuilder _stringBuilder = new(); protected override async Task OnInitializedAsync() { await LocalStorageWrapper.LoadFromLocalStorage(LocalStorage); if (!LocalStorageWrapper.Settings.DeveloperSettings.EnableConsoleLogging) { Console.WriteLine("Console logging disabled!"); var _sw = new StringWriter(); Console.SetOut(_sw); Console.SetError(_sw); return; } if (!LocalStorageWrapper.Settings.DeveloperSettings.EnableLogViewers) return; //intecept stdout with textwriter to get logs var sw = new StringWriter(_stringBuilder); Console.SetOut(sw); Console.SetError(sw); //keep updated int length = 0; Task.Run(async () => { while (true) { await Task.Delay(100); if (_stringBuilder.Length != length) { StateHasChanged(); length = _stringBuilder.Length; } } // ReSharper disable once FunctionNeverReturns - This is intentional behavior }); await base.OnInitializedAsync(); } }