From 4a5f5756195325067e4fc1b2780a8bb5f67c2aa8 Mon Sep 17 00:00:00 2001 From: Laura Hausmann Date: Thu, 17 Oct 2024 20:38:16 +0200 Subject: [PATCH] [backend/razor] Add CSS/JS versioning to razor pages & blazor ssr --- .../Components/Admin/AdminHead.razor | 5 +++-- .../Components/Helpers/VersionedLink.razor | 15 +++++++++++++++ .../Components/Helpers/VersionedScript.razor | 15 +++++++++++++++ Iceshrimp.Backend/Pages/NotePreview.razor | 2 +- Iceshrimp.Backend/Pages/Queue.cshtml | 7 ++++--- Iceshrimp.Backend/Pages/QueueJob.cshtml | 4 ++-- Iceshrimp.Backend/Pages/Shared/ErrorPage.cshtml | 6 +++--- Iceshrimp.Backend/Pages/Shared/FrontendSPA.cshtml | 12 ++++++------ .../Pages/Shared/RootComponent.razor | 6 +++--- Iceshrimp.Backend/Pages/Shared/_Layout.cshtml | 6 +++--- Iceshrimp.Backend/Pages/UserPreview.razor | 2 +- 11 files changed, 56 insertions(+), 24 deletions(-) create mode 100644 Iceshrimp.Backend/Components/Helpers/VersionedLink.razor create mode 100644 Iceshrimp.Backend/Components/Helpers/VersionedScript.razor diff --git a/Iceshrimp.Backend/Components/Admin/AdminHead.razor b/Iceshrimp.Backend/Components/Admin/AdminHead.razor index a3e8caab..dc1e25b3 100644 --- a/Iceshrimp.Backend/Components/Admin/AdminHead.razor +++ b/Iceshrimp.Backend/Components/Admin/AdminHead.razor @@ -1,5 +1,6 @@ @using Microsoft.AspNetCore.Components.Web +@using Iceshrimp.Backend.Components.Helpers - - + + \ No newline at end of file diff --git a/Iceshrimp.Backend/Components/Helpers/VersionedLink.razor b/Iceshrimp.Backend/Components/Helpers/VersionedLink.razor new file mode 100644 index 00000000..8ce8e3af --- /dev/null +++ b/Iceshrimp.Backend/Components/Helpers/VersionedLink.razor @@ -0,0 +1,15 @@ +@using Microsoft.AspNetCore.Mvc.ViewFeatures + + +@code { + [Inject] public required IFileVersionProvider FileVersionProvider { get; set; } + + @* ReSharper disable InconsistentNaming *@ + [Parameter, EditorRequired] public required string href { get; set; } + @* ReSharper restore InconsistentNaming *@ + + [Parameter(CaptureUnmatchedValues = true)] + public IDictionary? AdditionalAttributes { get; set; } + + private string VersionedHref => FileVersionProvider.AddFileVersionToPath("", href); +} \ No newline at end of file diff --git a/Iceshrimp.Backend/Components/Helpers/VersionedScript.razor b/Iceshrimp.Backend/Components/Helpers/VersionedScript.razor new file mode 100644 index 00000000..6135fa0b --- /dev/null +++ b/Iceshrimp.Backend/Components/Helpers/VersionedScript.razor @@ -0,0 +1,15 @@ +@using Microsoft.AspNetCore.Mvc.ViewFeatures + + +@code { + [Inject] public required IFileVersionProvider FileVersionProvider { get; set; } + + @* ReSharper disable InconsistentNaming *@ + [Parameter, EditorRequired] public required string src { get; set; } + @* ReSharper restore InconsistentNaming *@ + + [Parameter(CaptureUnmatchedValues = true)] + public IDictionary? AdditionalAttributes { get; set; } + + private string VersionedSrc => FileVersionProvider.AddFileVersionToPath("", src); +} \ No newline at end of file diff --git a/Iceshrimp.Backend/Pages/NotePreview.razor b/Iceshrimp.Backend/Pages/NotePreview.razor index 3d69080c..ab60acab 100644 --- a/Iceshrimp.Backend/Pages/NotePreview.razor +++ b/Iceshrimp.Backend/Pages/NotePreview.razor @@ -101,7 +101,7 @@ else - + if (!ShowRemoteReplies) diff --git a/Iceshrimp.Backend/Pages/Queue.cshtml b/Iceshrimp.Backend/Pages/Queue.cshtml index c755f0f4..72b75644 100644 --- a/Iceshrimp.Backend/Pages/Queue.cshtml +++ b/Iceshrimp.Backend/Pages/Queue.cshtml @@ -10,14 +10,14 @@ } @section head { - + } @section scripts { - + @if (Model.Queue == null) { - + } } @@ -25,6 +25,7 @@ @foreach (var queue in QueueSvc.QueueNames) { + //asd }
diff --git a/Iceshrimp.Backend/Pages/QueueJob.cshtml b/Iceshrimp.Backend/Pages/QueueJob.cshtml index b89cdf48..a581dd12 100644 --- a/Iceshrimp.Backend/Pages/QueueJob.cshtml +++ b/Iceshrimp.Backend/Pages/QueueJob.cshtml @@ -11,11 +11,11 @@ } @section head { - + } @section scripts { - + }

Queue Dashboard

diff --git a/Iceshrimp.Backend/Pages/Shared/ErrorPage.cshtml b/Iceshrimp.Backend/Pages/Shared/ErrorPage.cshtml index fda8a1e5..6534d594 100644 --- a/Iceshrimp.Backend/Pages/Shared/ErrorPage.cshtml +++ b/Iceshrimp.Backend/Pages/Shared/ErrorPage.cshtml @@ -15,10 +15,10 @@ @("Error - Iceshrimp.NET") @* ReSharper disable once Html.PathError *@ - - + + @* ReSharper disable once Html.PathError *@ - +