From ce7be6bbdf0edf069cb50aee64df187609893b92 Mon Sep 17 00:00:00 2001 From: TheArcaneBrony Date: Sat, 17 Jun 2023 20:58:51 +0200 Subject: Start refactor --- .../Classes/LocalStorageProviderService.cs | 5 + MatrixRoomUtils.Web/Classes/LocalStorageWrapper.cs | 10 +- MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor | 115 ++++++++++++++++-- .../Pages/HSAdmin/RoomQuery.razor.css | 0 MatrixRoomUtils.Web/Pages/ModalTest.razor | 102 ++++++++++++++++ MatrixRoomUtils.Web/Program.cs | 5 + .../SessionStorageProviderService.cs | 1 + MatrixRoomUtils.Web/Shared/ModalWindow.razor | 130 ++++++++++++++++++++ MatrixRoomUtils.Web/wwwroot/css/app.css | 5 + .../wwwroot/css/jetbrains-mono/jetbrains-mono.css | 133 +++++++++++++++++++++ .../css/jetbrains-mono/ttf/JetBrainsMono-Bold.ttf | Bin 0 -> 277828 bytes .../ttf/JetBrainsMono-BoldItalic.ttf | Bin 0 -> 279832 bytes .../jetbrains-mono/ttf/JetBrainsMono-ExtraBold.ttf | Bin 0 -> 279404 bytes .../ttf/JetBrainsMono-ExtraBoldItalic.ttf | Bin 0 -> 281616 bytes .../ttf/JetBrainsMono-ExtraLight.ttf | Bin 0 -> 274144 bytes .../ttf/JetBrainsMono-ExtraLightItalic.ttf | Bin 0 -> 274240 bytes .../jetbrains-mono/ttf/JetBrainsMono-Italic.ttf | Bin 0 -> 276840 bytes .../css/jetbrains-mono/ttf/JetBrainsMono-Light.ttf | Bin 0 -> 276452 bytes .../ttf/JetBrainsMono-LightItalic.ttf | Bin 0 -> 277104 bytes .../jetbrains-mono/ttf/JetBrainsMono-Medium.ttf | Bin 0 -> 273860 bytes .../ttf/JetBrainsMono-MediumItalic.ttf | Bin 0 -> 276804 bytes .../jetbrains-mono/ttf/JetBrainsMono-Regular.ttf | Bin 0 -> 273900 bytes .../jetbrains-mono/ttf/JetBrainsMono-SemiBold.ttf | Bin 0 -> 277092 bytes .../ttf/JetBrainsMono-SemiBoldItalic.ttf | Bin 0 -> 279828 bytes .../css/jetbrains-mono/ttf/JetBrainsMono-Thin.ttf | Bin 0 -> 270112 bytes .../ttf/JetBrainsMono-ThinItalic.ttf | Bin 0 -> 272984 bytes .../jetbrains-mono/ttf/JetBrainsMonoNL-Bold.ttf | Bin 0 -> 210988 bytes .../ttf/JetBrainsMonoNL-BoldItalic.ttf | Bin 0 -> 214132 bytes .../ttf/JetBrainsMonoNL-ExtraBold.ttf | Bin 0 -> 213372 bytes .../ttf/JetBrainsMonoNL-ExtraBoldItalic.ttf | Bin 0 -> 215456 bytes .../ttf/JetBrainsMonoNL-ExtraLight.ttf | Bin 0 -> 209072 bytes .../ttf/JetBrainsMonoNL-ExtraLightItalic.ttf | Bin 0 -> 209884 bytes .../jetbrains-mono/ttf/JetBrainsMonoNL-Italic.ttf | Bin 0 -> 211624 bytes .../jetbrains-mono/ttf/JetBrainsMonoNL-Light.ttf | Bin 0 -> 210840 bytes .../ttf/JetBrainsMonoNL-LightItalic.ttf | Bin 0 -> 212320 bytes .../jetbrains-mono/ttf/JetBrainsMonoNL-Medium.ttf | Bin 0 -> 208276 bytes .../ttf/JetBrainsMonoNL-MediumItalic.ttf | Bin 0 -> 211604 bytes .../jetbrains-mono/ttf/JetBrainsMonoNL-Regular.ttf | Bin 0 -> 208576 bytes .../ttf/JetBrainsMonoNL-SemiBold.ttf | Bin 0 -> 209864 bytes .../ttf/JetBrainsMonoNL-SemiBoldItalic.ttf | Bin 0 -> 214032 bytes .../jetbrains-mono/ttf/JetBrainsMonoNL-Thin.ttf | Bin 0 -> 206004 bytes .../ttf/JetBrainsMonoNL-ThinItalic.ttf | Bin 0 -> 209124 bytes .../variable/JetBrainsMono-Italic[wght].ttf | Bin 0 -> 308888 bytes .../variable/JetBrainsMono[wght].ttf | Bin 0 -> 303144 bytes .../webfonts/JetBrainsMono-Bold.woff2 | Bin 0 -> 94588 bytes .../webfonts/JetBrainsMono-BoldItalic.woff2 | Bin 0 -> 98152 bytes .../webfonts/JetBrainsMono-ExtraBold.woff2 | Bin 0 -> 93692 bytes .../webfonts/JetBrainsMono-ExtraBoldItalic.woff2 | Bin 0 -> 96864 bytes .../webfonts/JetBrainsMono-ExtraLight.woff2 | Bin 0 -> 92712 bytes .../webfonts/JetBrainsMono-ExtraLightItalic.woff2 | Bin 0 -> 95816 bytes .../webfonts/JetBrainsMono-Italic.woff2 | Bin 0 -> 95864 bytes .../webfonts/JetBrainsMono-Light.woff2 | Bin 0 -> 93856 bytes .../webfonts/JetBrainsMono-LightItalic.woff2 | Bin 0 -> 97280 bytes .../webfonts/JetBrainsMono-Medium.woff2 | Bin 0 -> 93824 bytes .../webfonts/JetBrainsMono-MediumItalic.woff2 | Bin 0 -> 97808 bytes .../webfonts/JetBrainsMono-Regular.woff2 | Bin 0 -> 92164 bytes .../webfonts/JetBrainsMono-SemiBold.woff2 | Bin 0 -> 94472 bytes .../webfonts/JetBrainsMono-SemiBoldItalic.woff2 | Bin 0 -> 98124 bytes .../webfonts/JetBrainsMono-Thin.woff2 | Bin 0 -> 90612 bytes .../webfonts/JetBrainsMono-ThinItalic.woff2 | Bin 0 -> 94316 bytes MatrixRoomUtils.Web/wwwroot/index.html | 6 + 61 files changed, 498 insertions(+), 14 deletions(-) create mode 100644 MatrixRoomUtils.Web/Classes/LocalStorageProviderService.cs create mode 100644 MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor.css create mode 100644 MatrixRoomUtils.Web/Pages/ModalTest.razor create mode 100644 MatrixRoomUtils.Web/SessionStorageProviderService.cs create mode 100644 MatrixRoomUtils.Web/Shared/ModalWindow.razor create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/jetbrains-mono.css create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Bold.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-BoldItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraBold.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraBoldItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraLight.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraLightItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Italic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Light.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-LightItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Medium.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-MediumItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Regular.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-SemiBold.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-SemiBoldItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Thin.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ThinItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Bold.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-BoldItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraBold.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraBoldItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraLight.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraLightItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Italic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Light.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-LightItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Medium.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-MediumItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Regular.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-SemiBold.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-SemiBoldItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Thin.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ThinItalic.ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/variable/JetBrainsMono-Italic[wght].ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/variable/JetBrainsMono[wght].ttf create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Bold.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-BoldItalic.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraBold.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraBoldItalic.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraLight.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraLightItalic.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Italic.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Light.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-LightItalic.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Medium.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-MediumItalic.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Regular.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-SemiBold.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-SemiBoldItalic.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Thin.woff2 create mode 100644 MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ThinItalic.woff2 (limited to 'MatrixRoomUtils.Web') diff --git a/MatrixRoomUtils.Web/Classes/LocalStorageProviderService.cs b/MatrixRoomUtils.Web/Classes/LocalStorageProviderService.cs new file mode 100644 index 0000000..0c3deec --- /dev/null +++ b/MatrixRoomUtils.Web/Classes/LocalStorageProviderService.cs @@ -0,0 +1,5 @@ +namespace MatrixRoomUtils.Web.Classes; + +public class LocalStorageProviderService : IStorageProvider { + +} \ No newline at end of file diff --git a/MatrixRoomUtils.Web/Classes/LocalStorageWrapper.cs b/MatrixRoomUtils.Web/Classes/LocalStorageWrapper.cs index 4e7117d..b7da78a 100644 --- a/MatrixRoomUtils.Web/Classes/LocalStorageWrapper.cs +++ b/MatrixRoomUtils.Web/Classes/LocalStorageWrapper.cs @@ -10,11 +10,13 @@ public class LocalStorageWrapper { //some basic logic public static async Task InitialiseRuntimeVariables(ILocalStorageService localStorage) { //RuntimeCache stuff - async void Save() => await SaveToLocalStorage(localStorage); - + async Task Save() => await SaveToLocalStorage(localStorage); + async Task SaveObject(string key, object obj) => await localStorage.SetItemAsync(key, obj); + async Task RemoveObject(string key) => await localStorage.RemoveItemAsync(key); + RuntimeCache.Save = Save; - RuntimeCache.SaveObject = async (key, obj) => await localStorage.SetItemAsync(key, obj); - RuntimeCache.RemoveObject = async key => await localStorage.RemoveItemAsync(key); + RuntimeCache.SaveObject = SaveObject; + RuntimeCache.RemoveObject = RemoveObject; if (RuntimeCache.LastUsedToken != null) { Console.WriteLine("Access token is not null, creating authenticated home server"); Console.WriteLine($"Homeserver cache: {RuntimeCache.HomeserverResolutionCache.Count} entries"); diff --git a/MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor b/MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor index a62362b..1fe13bd 100644 --- a/MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor +++ b/MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor @@ -1,12 +1,13 @@ @page "/HSAdmin/RoomQuery" @using MatrixRoomUtils.Core.Extensions +@using MatrixRoomUtils.Core.Filters @using MatrixRoomUtils.Core.Responses.Admin +@using MatrixRoomUtils.Web.Shared.SimpleComponents +

Homeserver Administration - Room Query


- -


+
+ + Local filtering (slow) + + +
+ String contains + Room ID: + Room name: + Canonical alias: + Creator: + Room version: + Encryption algorithm: + Join rules: + Guest access: + History visibility: + + Optional checks + + Is federated: + @if (Filter.CheckFederation) { + + } + + + Is public: + @if (Filter.CheckPublic) { + + } + + + Ranges + + state events + + + members + + + local members + +
+

@if (Results.Count > 0) {

Found @Results.Count rooms

+
+ TSV data (copy/paste) +
+            
+                @foreach (var res in Results) {
+                    
+                        
+                        
+                        
+                        
+                    
+                }
+            
@res.RoomId@("\t")@res.CanonicalAlias@("\t")@res.Creator@("\t")@res.Name
+
+
} @foreach (var res in Results) { @@ -27,20 +86,58 @@

@if (!string.IsNullOrWhiteSpace(res.CanonicalAlias)) { - @res.CanonicalAlias (@res.RoomId)
+ @res.CanonicalAlias (@res.RoomId) +
} else { - @res.RoomId
+ @res.RoomId +
} @if (!string.IsNullOrWhiteSpace(res.Creator)) { - Created by
+ Created by +
}

@res.StateEvents state events
@res.JoinedMembers members, of which @res.JoinedLocalMembers are on this server +
+ Full result data +
@res.ToJson(ignoreNull: true)
+
} + + @code { [Parameter] @@ -51,10 +148,6 @@ [SupplyParameterFromQuery(Name = "name_search")] public string SearchTerm { get; set; } - [Parameter] - [SupplyParameterFromQuery(Name = "content_search")] - public string ContentSearchTerm { get; set; } - [Parameter] [SupplyParameterFromQuery(Name = "ascending")] public bool Ascending { get; set; } @@ -63,6 +156,8 @@ private string Status { get; set; } + public LocalRoomQueryFilter Filter { get; set; } = new(); + protected override async Task OnParametersSetAsync() { if (Ascending == null) Ascending = true; @@ -71,7 +166,7 @@ private async Task Search() { Results.Clear(); - var searchRooms = RuntimeCache.CurrentHomeServer.Admin.SearchRoomsAsync(orderBy: OrderBy!, dir: Ascending ? "f" : "b", searchTerm: SearchTerm, contentSearch: ContentSearchTerm).GetAsyncEnumerator(); + var searchRooms = RuntimeCache.CurrentHomeServer.Admin.SearchRoomsAsync(orderBy: OrderBy!, dir: Ascending ? "f" : "b", searchTerm: SearchTerm, localFilter: Filter).GetAsyncEnumerator(); while (await searchRooms.MoveNextAsync()) { var room = searchRooms.Current; Console.WriteLine("Hit: " + room.ToJson(false)); diff --git a/MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor.css b/MatrixRoomUtils.Web/Pages/HSAdmin/RoomQuery.razor.css new file mode 100644 index 0000000..e69de29 diff --git a/MatrixRoomUtils.Web/Pages/ModalTest.razor b/MatrixRoomUtils.Web/Pages/ModalTest.razor new file mode 100644 index 0000000..d031dc2 --- /dev/null +++ b/MatrixRoomUtils.Web/Pages/ModalTest.razor @@ -0,0 +1,102 @@ +@page "/ModalTest" +@inject IJSRuntime JsRuntime +

ModalTest

+ +@foreach (var (key, value) in _windowInfos) { + @* @value.Content *@ +} +@for (int i = 0; i < 5; i++) { + var i1 = i; + + @for (int j = 0; j < i1; j++) { +

@j

+ } +
+} + +@code { + + private Dictionary _windowInfos = new Dictionary(); + + private class WindowInfo { + public double X; + public double Y; + public string Title; + public RenderFragment Content; + } + + protected override async Task OnInitializedAsync() { + double _x = 2; + double _xv = 20; + double _y = 0; + double multiplier = 1; + + await LocalStorageWrapper.LoadFromLocalStorage(LocalStorage); + //var rooms = await RuntimeCache.CurrentHomeServer.GetJoinedRooms(); + + //rooms.ForEach(async room => { + // var name = await room.GetNameAsync(); + // _windowInfos.Add(_windowInfos.Count, new WindowInfo() { X = _x, Y = _y, Title = name}); + // _x += 20; + // _y += 20; + // var dimension = await JsRuntime.InvokeAsync("getWindowDimensions"); + // if (_x > dimension.Width - 100) _x %= dimension.Width - 100; + // if (_y > dimension.Height - 50) _y %= dimension.Height - 50; + // StateHasChanged(); + //}); + + for (int i = 0; i < 200; i++) { + var i1 = i; + _windowInfos.Add(_windowInfos.Count, new WindowInfo() { + X = _x, + Y = _y, + Title = "Win" + i1, + Content = builder => { + builder.OpenComponent(0); + builder.AddAttribute(1, "X", _x); + builder.AddAttribute(2, "Y", _y); + builder.AddAttribute(3, "Title", "Win" + i1); + builder.AddAttribute(4, "ChildContent", (RenderFragment)(builder2 => { + builder2.OpenElement(0, "h1"); + builder2.AddContent(1, "Hello " + i1); + builder2.CloseElement(); + })); + builder.CloseComponent(); + } + }); + //_x += _xv /= 1000/System.Math.Sqrt((double)_windowInfos.Count)*_windowInfos.Count.ToString().Length*multiplier; + _y += 20; + _x += 20; + var dimension = await JsRuntime.InvokeAsync("getWindowDimensions"); + if (_x > dimension.Width - 100) _x %= dimension.Width - 100; + if (_y > dimension.Height - 50) { + _y %= dimension.Height - 50; + _xv = 20; + } + if ( + (_windowInfos.Count < 10 && _windowInfos.Count % 2 == 0) || + (_windowInfos.Count < 100 && _windowInfos.Count % 10 == 0) || + (_windowInfos.Count < 1000 && _windowInfos.Count % 50 == 0) || + (_windowInfos.Count < 10000 && _windowInfos.Count % 100 == 0) + ) { + StateHasChanged(); + await Task.Delay(25); + } + if(_windowInfos.Count > 750) multiplier = 2; + if(_windowInfos.Count > 1500) multiplier = 3; + + } + + await base.OnInitializedAsync(); + } + + private void OnCloseClicked(int i1) { + Console.WriteLine("Close clicked on " + i1); + } + + public class WindowDimension { + public int Width { get; set; } + public int Height { get; set; } + } + +} diff --git a/MatrixRoomUtils.Web/Program.cs b/MatrixRoomUtils.Web/Program.cs index 164f746..8ea8742 100644 --- a/MatrixRoomUtils.Web/Program.cs +++ b/MatrixRoomUtils.Web/Program.cs @@ -2,6 +2,7 @@ using System.Text.Json; using System.Text.Json.Serialization; using Blazored.LocalStorage; using MatrixRoomUtils.Web; +using MatrixRoomUtils.Web.Classes; using Microsoft.AspNetCore.Components.Web; using Microsoft.AspNetCore.Components.WebAssembly.Hosting; @@ -20,4 +21,8 @@ builder.Services.AddBlazoredLocalStorage(config => { config.JsonSerializerOptions.WriteIndented = false; }); +builder.Services.AddSingleton(); +builder.Services.AddSingleton(); +builder.Services.AddSingleton>(); + await builder.Build().RunAsync(); \ No newline at end of file diff --git a/MatrixRoomUtils.Web/SessionStorageProviderService.cs b/MatrixRoomUtils.Web/SessionStorageProviderService.cs new file mode 100644 index 0000000..82372ff --- /dev/null +++ b/MatrixRoomUtils.Web/SessionStorageProviderService.cs @@ -0,0 +1 @@ +public class SessionStorageProviderService { } \ No newline at end of file diff --git a/MatrixRoomUtils.Web/Shared/ModalWindow.razor b/MatrixRoomUtils.Web/Shared/ModalWindow.razor new file mode 100644 index 0000000..75c2933 --- /dev/null +++ b/MatrixRoomUtils.Web/Shared/ModalWindow.razor @@ -0,0 +1,130 @@ +
+
+ @Title + +
+
+ @ChildContent +
+
+ + + +@code { + + [Parameter] + public RenderFragment? ChildContent { get; set; } + + [Parameter] + public string Title { get; set; } = "Untitled window"; + + [Parameter] + public double X { get; set; } = 60; + + [Parameter] + public double Y { get; set; } = 60; + + [Parameter] + public Action OnCloseClicked { get; set; } + + + private double _x = 60; + private double _y = 60; + + protected override void OnInitialized() { + _x = X; + _y = Y; + } + + private void WindowDrag(DragEventArgs obj) { + Console.WriteLine("Drag: " + obj.ToJson()); + + _x += obj.MovementX; + _y += obj.MovementY; + + StateHasChanged(); + } + + private bool isDragging = false; + private double dragX = 0; + private double dragY = 0; + private void MouseDown(MouseEventArgs obj) { + isDragging = true; + dragX = obj.ClientX; + dragY = obj.ClientY; + } + + private void MouseUp(MouseEventArgs obj) { + isDragging = false; + } + + private void MouseMove(MouseEventArgs obj) { + if (isDragging) { + _x += obj.ClientX - dragX; + _y += obj.ClientY - dragY; + dragX = obj.ClientX; + dragY = obj.ClientY; + StateHasChanged(); + } + } + +} \ No newline at end of file diff --git a/MatrixRoomUtils.Web/wwwroot/css/app.css b/MatrixRoomUtils.Web/wwwroot/css/app.css index 245566a..cb7ba63 100644 --- a/MatrixRoomUtils.Web/wwwroot/css/app.css +++ b/MatrixRoomUtils.Web/wwwroot/css/app.css @@ -1,4 +1,5 @@ @import url('open-iconic/font/css/open-iconic-bootstrap.min.css'); +@import url('jetbrains-mono/jetbrains-mono.css'); article > h3:first-child { padding-top: 24px; @@ -114,3 +115,7 @@ a, .btn-link { .loading-progress-text:after { content: var(--blazor-load-percentage-text, "Loading"); } + +pre { + font-family: JetBrainsMono, var(--bs-font-monospace); +} \ No newline at end of file diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/jetbrains-mono.css b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/jetbrains-mono.css new file mode 100644 index 0000000..aa98602 --- /dev/null +++ b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/jetbrains-mono.css @@ -0,0 +1,133 @@ +/* source: https://gist.github.com/aasmpro/95776294ecf48bd7d0562504bad848ea */ + +/* normal fonts */ + +@font-face { + font-family: JetBrainsMono; + font-style: normal; + font-weight: 100; + src: url("./ttf/JetBrainsMono-Thin.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-Thin.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: normal; + font-weight: 200; + src: url("./ttf/JetBrainsMono-ExtraLight.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-ExtraLight.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: normal; + font-weight: 300; + src: url("./ttf/JetBrainsMono-Light.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-Light.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: normal; + font-weight: 400; + src: url("./ttf/JetBrainsMono-Regular.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-Regular.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: normal; + font-weight: 500; + src: url("./ttf/JetBrainsMono-Medium.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-Medium.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: normal; + font-weight: 600; + src: url("./ttf/JetBrainsMono-SemiBold.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-SemiBold.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: normal; + font-weight: 700; + src: url("./ttf/JetBrainsMono-Bold.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-Bold.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: normal; + font-weight: 800; + src: url("./ttf/JetBrainsMono-ExtraBold.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-ExtraBold.woff2") format("woff2"); +} + +/* italic fonts */ + +@font-face { + font-family: JetBrainsMono; + font-style: italic; + font-weight: 100; + src: url("./ttf/JetBrainsMono-ThinItalic.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-ThinItalic.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: italic; + font-weight: 200; + src: url("./ttf/JetBrainsMono-ExtraLightItalic.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-ExtraLightItalic.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: italic; + font-weight: 300; + src: url("./ttf/JetBrainsMono-LightItalic.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-LightItalic.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: italic; + font-weight: 400; + src: url("./ttf/JetBrainsMono-Italic.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-Italic.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: italic; + font-weight: 500; + src: url("./ttf/JetBrainsMono-MediumItalic.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-MediumItalic.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: italic; + font-weight: 600; + src: url("./ttf/JetBrainsMono-SemiBoldItalic.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-SemiBoldItalic.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: italic; + font-weight: 700; + src: url("./ttf/JetBrainsMono-BoldItalic.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-BoldItalic.woff2") format("woff2"); +} + +@font-face { + font-family: JetBrainsMono; + font-style: italic; + font-weight: 800; + src: url("./ttf/JetBrainsMono-ExtraBoldItalic.ttf") format("truetype"); + src: url("./webfonts/JetBrainsMono-ExtraBoldItalic.woff2") format("woff2"); +} \ No newline at end of file diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Bold.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Bold.ttf new file mode 100644 index 0000000..8c93043 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Bold.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-BoldItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-BoldItalic.ttf new file mode 100644 index 0000000..1ddf216 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-BoldItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraBold.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraBold.ttf new file mode 100644 index 0000000..435d7a7 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraBold.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraBoldItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraBoldItalic.ttf new file mode 100644 index 0000000..79e616e Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraBoldItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraLight.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraLight.ttf new file mode 100644 index 0000000..c131cbf Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraLight.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraLightItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraLightItalic.ttf new file mode 100644 index 0000000..a768985 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ExtraLightItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Italic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Italic.ttf new file mode 100644 index 0000000..ccc9d6a Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Italic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Light.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Light.ttf new file mode 100644 index 0000000..15f15a2 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Light.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-LightItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-LightItalic.ttf new file mode 100644 index 0000000..506208f Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-LightItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Medium.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Medium.ttf new file mode 100644 index 0000000..9767115 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Medium.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-MediumItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-MediumItalic.ttf new file mode 100644 index 0000000..415a9e3 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-MediumItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Regular.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Regular.ttf new file mode 100644 index 0000000..dff66cc Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Regular.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-SemiBold.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-SemiBold.ttf new file mode 100644 index 0000000..a70e69b Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-SemiBold.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-SemiBoldItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-SemiBoldItalic.ttf new file mode 100644 index 0000000..968602e Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-SemiBoldItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Thin.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Thin.ttf new file mode 100644 index 0000000..7dbe2ac Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-Thin.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ThinItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ThinItalic.ttf new file mode 100644 index 0000000..c6ad6c2 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMono-ThinItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Bold.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Bold.ttf new file mode 100644 index 0000000..f78f84f Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Bold.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-BoldItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-BoldItalic.ttf new file mode 100644 index 0000000..9fb8c83 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-BoldItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraBold.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraBold.ttf new file mode 100644 index 0000000..fe5be6a Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraBold.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraBoldItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraBoldItalic.ttf new file mode 100644 index 0000000..59fc980 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraBoldItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraLight.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraLight.ttf new file mode 100644 index 0000000..6da7b75 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraLight.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraLightItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraLightItalic.ttf new file mode 100644 index 0000000..5733efc Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ExtraLightItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Italic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Italic.ttf new file mode 100644 index 0000000..4e9c380 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Italic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Light.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Light.ttf new file mode 100644 index 0000000..0b79b0c Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Light.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-LightItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-LightItalic.ttf new file mode 100644 index 0000000..b5e0842 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-LightItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Medium.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Medium.ttf new file mode 100644 index 0000000..1454372 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Medium.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-MediumItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-MediumItalic.ttf new file mode 100644 index 0000000..8d63c6c Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-MediumItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Regular.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Regular.ttf new file mode 100644 index 0000000..70d2ec9 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Regular.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-SemiBold.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-SemiBold.ttf new file mode 100644 index 0000000..ce60a88 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-SemiBold.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-SemiBoldItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-SemiBoldItalic.ttf new file mode 100644 index 0000000..3b3f8f6 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-SemiBoldItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Thin.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Thin.ttf new file mode 100644 index 0000000..bea837e Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-Thin.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ThinItalic.ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ThinItalic.ttf new file mode 100644 index 0000000..f0bfed7 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/ttf/JetBrainsMonoNL-ThinItalic.ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/variable/JetBrainsMono-Italic[wght].ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/variable/JetBrainsMono-Italic[wght].ttf new file mode 100644 index 0000000..5414835 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/variable/JetBrainsMono-Italic[wght].ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/variable/JetBrainsMono[wght].ttf b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/variable/JetBrainsMono[wght].ttf new file mode 100644 index 0000000..b60e77f Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/variable/JetBrainsMono[wght].ttf differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Bold.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Bold.woff2 new file mode 100644 index 0000000..4917f43 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Bold.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-BoldItalic.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-BoldItalic.woff2 new file mode 100644 index 0000000..536d3f7 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-BoldItalic.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraBold.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraBold.woff2 new file mode 100644 index 0000000..8f88c54 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraBold.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraBoldItalic.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraBoldItalic.woff2 new file mode 100644 index 0000000..d1478ba Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraBoldItalic.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraLight.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraLight.woff2 new file mode 100644 index 0000000..b97239f Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraLight.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraLightItalic.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraLightItalic.woff2 new file mode 100644 index 0000000..be01aac Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ExtraLightItalic.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Italic.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Italic.woff2 new file mode 100644 index 0000000..d60c270 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Italic.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Light.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Light.woff2 new file mode 100644 index 0000000..6538498 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Light.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-LightItalic.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-LightItalic.woff2 new file mode 100644 index 0000000..66ca3d2 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-LightItalic.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Medium.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Medium.woff2 new file mode 100644 index 0000000..669d04c Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Medium.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-MediumItalic.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-MediumItalic.woff2 new file mode 100644 index 0000000..80cfd15 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-MediumItalic.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Regular.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Regular.woff2 new file mode 100644 index 0000000..40da427 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Regular.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-SemiBold.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-SemiBold.woff2 new file mode 100644 index 0000000..5ead7b0 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-SemiBold.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-SemiBoldItalic.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-SemiBoldItalic.woff2 new file mode 100644 index 0000000..c5dd294 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-SemiBoldItalic.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Thin.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Thin.woff2 new file mode 100644 index 0000000..17270e4 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-Thin.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ThinItalic.woff2 b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ThinItalic.woff2 new file mode 100644 index 0000000..a643215 Binary files /dev/null and b/MatrixRoomUtils.Web/wwwroot/css/jetbrains-mono/webfonts/JetBrainsMono-ThinItalic.woff2 differ diff --git a/MatrixRoomUtils.Web/wwwroot/index.html b/MatrixRoomUtils.Web/wwwroot/index.html index f268ac4..9c9e7d0 100644 --- a/MatrixRoomUtils.Web/wwwroot/index.html +++ b/MatrixRoomUtils.Web/wwwroot/index.html @@ -36,6 +36,12 @@ console.log("Element is not an HTMLElement", element); } } + function getWindowDimensions() { + return { + width: window.innerWidth, + height: window.innerHeight + }; + } -- cgit 1.4.1