@inject IJSRuntime jsRuntime; @implements IDisposable
Requested
@foreach (var ordersAtTime in BuildOrderService.StartedOrders.Reverse()) { foreach (var order in ordersAtTime.Value) {
@ordersAtTime.Key | T @Interval.ToTime(ordersAtTime.Key)
@order.Info().Name

} }
Finished
@foreach (var ordersAtTime in BuildOrderService.CompletedOrders.Reverse()) { foreach (var order in ordersAtTime.Value) {
@ordersAtTime.Key | T @Interval.ToTime(ordersAtTime.Key)
@order.Info().Name

} }
@code { [Inject] IEconomyService EconomyService { get; set; } = default!; [Inject] IBuildOrderService BuildOrderService { get; set; } = default!; [Inject] ITimingService TimingService { get; set; } = default!; protected override void OnInitialized() { EconomyService.Subscribe(StateHasChanged); BuildOrderService.Subscribe(StateHasChanged); } void IDisposable.Dispose() { EconomyService.Unsubscribe(StateHasChanged); BuildOrderService.Unsubscribe(StateHasChanged); } protected override bool ShouldRender() { #if DEBUG jsRuntime.InvokeVoidAsync("console.time", "HighlightsComponent"); #endif return true; } protected override void OnAfterRender(bool firstRender) { #if DEBUG jsRuntime.InvokeVoidAsync("console.timeEnd", "HighlightsComponent"); #endif } }