#pragma checksum "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "e0a2642c7baa3781ff8bc4211e652dc9a95f8ceb" // #pragma warning disable 1591 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) { __builder.OpenElement(0, "div"); __builder.AddAttribute(1, "class", "top-row pl-4 navbar navbar-dark"); __builder.AddAttribute(2, "b-9ym6xv191f"); __builder.AddMarkupContent(3, "spanreed\r\n "); __builder.OpenElement(4, "button"); __builder.AddAttribute(5, "class", "navbar-toggler"); __builder.AddAttribute(6, "onclick", Microsoft.AspNetCore.Components.EventCallback.Factory.Create(this, #nullable restore #line 9 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" ToggleNavMenu #line default #line hidden #nullable disable )); __builder.AddAttribute(7, "b-9ym6xv191f"); __builder.AddMarkupContent(8, ""); __builder.CloseElement(); __builder.CloseElement(); __builder.AddMarkupContent(9, "\r\n\r\n"); __builder.OpenElement(10, "div"); __builder.AddAttribute(11, "class", #nullable restore #line 14 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" NavMenuCssClass #line default #line hidden #nullable disable ); __builder.AddAttribute(12, "onclick", Microsoft.AspNetCore.Components.EventCallback.Factory.Create(this, #nullable restore #line 14 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" ToggleNavMenu #line default #line hidden #nullable disable )); __builder.AddAttribute(13, "b-9ym6xv191f"); __builder.OpenElement(14, "ul"); __builder.AddAttribute(15, "class", "nav flex-column"); __builder.AddAttribute(16, "b-9ym6xv191f"); #nullable restore #line 16 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" foreach (var room in rooms) { #line default #line hidden #nullable disable __builder.OpenElement(17, "li"); __builder.AddAttribute(18, "class", "nav-item px-3"); __builder.AddAttribute(19, "b-9ym6xv191f"); __builder.OpenComponent(20); __builder.AddAttribute(21, "class", "nav-link"); __builder.AddAttribute(22, "href", #nullable restore #line 18 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" room #line default #line hidden #nullable disable ); __builder.AddAttribute(23, "ChildContent", (Microsoft.AspNetCore.Components.RenderFragment)((__builder2) => { __builder2.AddMarkupContent(24, " "); __builder2.AddContent(25, #nullable restore #line 19 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" room #line default #line hidden #nullable disable ); } )); __builder.CloseComponent(); __builder.CloseElement(); #nullable restore #line 22 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" } #line default #line hidden #nullable disable __builder.OpenElement(26, "li"); __builder.AddAttribute(27, "class", "nav-item px-3"); __builder.AddAttribute(28, "b-9ym6xv191f"); __builder.AddMarkupContent(29, " "); __builder.OpenElement(30, "input"); __builder.AddAttribute(31, "id", "nav-text"); __builder.AddAttribute(32, "class", "nav"); __builder.AddAttribute(33, "type", "text"); __builder.AddAttribute(34, "onkeypress", Microsoft.AspNetCore.Components.EventCallback.Factory.Create(this, #nullable restore #line 24 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" EnterBar #line default #line hidden #nullable disable )); __builder.AddAttribute(35, "placeholder", "Create Room"); __builder.AddAttribute(36, "value", Microsoft.AspNetCore.Components.BindConverter.FormatValue( #nullable restore #line 24 "/home/skins/projects/spanreed/Client/Shared/NavMenu.razor" NewRoomBox #line default #line hidden #nullable disable )); __builder.AddAttribute(37, "onchange", Microsoft.AspNetCore.Components.EventCallback.Factory.CreateBinder(this, __value => NewRoomBox = __value, NewRoomBox)); __builder.SetUpdatesAttributeName("value"); __builder.AddAttribute(38, "b-9ym6xv191f"); __builder.CloseElement(); __builder.CloseElement(); __builder.CloseElement(); __builder.CloseElement(); } #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