// #pragma warning disable 1591 #pragma warning disable 0414 #pragma warning disable 0649 #pragma warning disable 0169 namespace spanreed.Client.Shared { #line hidden using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Components; #nullable restore #line 1 "/home/skins/projects/spanreed/Client/_Imports.razor" using System.Net.Http; #line default #line hidden #nullable disable #nullable restore #line 2 "/home/skins/projects/spanreed/Client/_Imports.razor" using System.Net.Http.Json; #line default #line hidden #nullable disable #nullable restore #line 3 "/home/skins/projects/spanreed/Client/_Imports.razor" using Microsoft.AspNetCore.Components.Forms; #line default #line hidden #nullable disable #nullable restore #line 4 "/home/skins/projects/spanreed/Client/_Imports.razor" using Microsoft.AspNetCore.Components.Routing; #line default #line hidden #nullable disable #nullable restore #line 5 "/home/skins/projects/spanreed/Client/_Imports.razor" using Microsoft.AspNetCore.Components.Web; #line default #line hidden #nullable disable #nullable restore #line 6 "/home/skins/projects/spanreed/Client/_Imports.razor" using Microsoft.AspNetCore.Components.Web.Virtualization; #line default #line hidden #nullable disable #nullable restore #line 7 "/home/skins/projects/spanreed/Client/_Imports.razor" using Microsoft.AspNetCore.Components.WebAssembly.Http; #line default #line hidden #nullable disable #nullable restore #line 8 "/home/skins/projects/spanreed/Client/_Imports.razor" using Microsoft.JSInterop; #line default #line hidden #nullable disable #nullable restore #line 9 "/home/skins/projects/spanreed/Client/_Imports.razor" using spanreed.Client; #line default #line hidden #nullable disable #nullable restore #line 10 "/home/skins/projects/spanreed/Client/_Imports.razor" using spanreed.Client.Shared; #line default #line hidden #nullable disable #nullable restore #line 1 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" using Microsoft.AspNetCore.SignalR.Client; #line default #line hidden #nullable disable #nullable restore #line 2 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" using spanreed.Shared; #line default #line hidden #nullable disable public partial class NavMenu : Microsoft.AspNetCore.Components.ComponentBase, IDisposable { #pragma warning disable 1998 protected override void BuildRenderTree(Microsoft.AspNetCore.Components.Rendering.RenderTreeBuilder __builder) { } #pragma warning restore 1998 #nullable restore #line 29 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" private string NewRoom; private string NewRoomBox; private bool collapseNavMenu = true; private string NavMenuCssClass => collapseNavMenu ? "collapse" : null; private void ToggleNavMenu() { collapseNavMenu = !collapseNavMenu; } private HubConnection hubConnection; private List rooms = new List(); protected override async Task OnInitializedAsync() { hubConnection = new HubConnectionBuilder().WithUrl(NavigationManager.ToAbsoluteUri("/addroom")).Build(); hubConnection.On("NewRoom", name => { rooms.Add(name); rooms.Sort(); StateHasChanged(); }); var existing_rooms = await Http.GetFromJsonAsync("Room"); if (existing_rooms != null) { foreach (var room in existing_rooms) { rooms.Add(room); rooms.Sort(); } } await hubConnection.StartAsync(); var roomName = NavigationManager.Uri.Split("/").LastOrDefault(); if (roomName.Length > 0) { await hubConnection.SendAsync("AddRoom", NavigationManager.Uri.Split("/").LastOrDefault()); } } async Task EnterBar(KeyboardEventArgs e) { if (e.Key.Equals("Enter")) { Console.WriteLine(NewRoom); await hubConnection.SendAsync("AddRoom", NewRoom); NavigationManager.NavigateTo(NewRoom); NewRoom = ""; NewRoomBox = ""; } else if (e.Key.Length == 1) { NewRoom = NewRoom + e.Key; } } public bool IsConnected => hubConnection.State == HubConnectionState.Connected; public void Dispose() { _ = hubConnection.DisposeAsync(); } #line default #line hidden #nullable disable [global::Microsoft.AspNetCore.Components.InjectAttribute] private HttpClient Http { get; set; } [global::Microsoft.AspNetCore.Components.InjectAttribute] private NavigationManager NavigationManager { get; set; } } } #pragma warning restore 1591