a fork of iceshrimp.net but a tweaked frontend to my personal liking. waow
fediverse social-media social iceshrimp fedi
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

[backend/razor] Add CSS/JS versioning to razor pages & blazor ssr

+56 -24
+3 -2
Iceshrimp.Backend/Components/Admin/AdminHead.razor
··· 1 1 @using Microsoft.AspNetCore.Components.Web 2 + @using Iceshrimp.Backend.Components.Helpers 2 3 <HeadContent> 3 - <link rel="stylesheet" href="/css/admin.css"/> 4 - <script src="/js/admin.js"></script> 4 + <VersionedLink rel="stylesheet" href="/css/admin.css"/> 5 + <VersionedScript src="/js/admin.js"/> 5 6 </HeadContent>
+15
Iceshrimp.Backend/Components/Helpers/VersionedLink.razor
··· 1 + @using Microsoft.AspNetCore.Mvc.ViewFeatures 2 + <link @attributes="AdditionalAttributes" href="@VersionedHref"/> 3 + 4 + @code { 5 + [Inject] public required IFileVersionProvider FileVersionProvider { get; set; } 6 + 7 + @* ReSharper disable InconsistentNaming *@ 8 + [Parameter, EditorRequired] public required string href { get; set; } 9 + @* ReSharper restore InconsistentNaming *@ 10 + 11 + [Parameter(CaptureUnmatchedValues = true)] 12 + public IDictionary<string, object>? AdditionalAttributes { get; set; } 13 + 14 + private string VersionedHref => FileVersionProvider.AddFileVersionToPath("", href); 15 + }
+15
Iceshrimp.Backend/Components/Helpers/VersionedScript.razor
··· 1 + @using Microsoft.AspNetCore.Mvc.ViewFeatures 2 + <script src="@VersionedSrc" @attributes="AdditionalAttributes"></script> 3 + 4 + @code { 5 + [Inject] public required IFileVersionProvider FileVersionProvider { get; set; } 6 + 7 + @* ReSharper disable InconsistentNaming *@ 8 + [Parameter, EditorRequired] public required string src { get; set; } 9 + @* ReSharper restore InconsistentNaming *@ 10 + 11 + [Parameter(CaptureUnmatchedValues = true)] 12 + public IDictionary<string, object>? AdditionalAttributes { get; set; } 13 + 14 + private string VersionedSrc => FileVersionProvider.AddFileVersionToPath("", src); 15 + }
+1 -1
Iceshrimp.Backend/Pages/NotePreview.razor
··· 101 101 <meta name="og:image" content="@previewImageUrl"> 102 102 <meta name="og:description" content="@description"> 103 103 104 - <link rel="stylesheet" href="/css/public-preview.css"/> 104 + <VersionedLink rel="stylesheet" href="/css/public-preview.css"/> 105 105 </HeadContent> 106 106 107 107 if (!ShowRemoteReplies)
+4 -3
Iceshrimp.Backend/Pages/Queue.cshtml
··· 10 10 } 11 11 12 12 @section head { 13 - <link rel="stylesheet" href="~/css/queue.css"/> 13 + <link rel="stylesheet" href="~/css/queue.css" asp-append-version="true"/> 14 14 } 15 15 16 16 @section scripts { 17 - <script src="~/js/queue.js"></script> 17 + <script src="~/js/queue.js" asp-append-version="true"></script> 18 18 @if (Model.Queue == null) 19 19 { 20 - <script src="~/js/queue-index.js"></script> 20 + <script src="~/js/queue-index.js" asp-append-version="true"></script> 21 21 } 22 22 } 23 23 ··· 25 25 <button role="link" data-target="/queue" onclick="navigate(event)">overview</button> 26 26 @foreach (var queue in QueueSvc.QueueNames) 27 27 { 28 + //asd 28 29 <button role="link" data-target="/queue/@queue" onclick="navigate(event)">@queue</button> 29 30 } 30 31 <br/>
+2 -2
Iceshrimp.Backend/Pages/QueueJob.cshtml
··· 11 11 } 12 12 13 13 @section head { 14 - <link rel="stylesheet" href="~/css/queue.css"/> 14 + <link rel="stylesheet" href="~/css/queue.css" asp-append-version="true"/> 15 15 } 16 16 17 17 @section scripts { 18 - <script src="~/js/queue.js"></script> 18 + <script src="~/js/queue.js" asp-append-version="true"></script> 19 19 } 20 20 21 21 <h1>Queue Dashboard</h1>
+3 -3
Iceshrimp.Backend/Pages/Shared/ErrorPage.cshtml
··· 15 15 <meta charset="utf-8"/> 16 16 <title>@("Error - Iceshrimp.NET")</title> 17 17 @* ReSharper disable once Html.PathError *@ 18 - <link rel="stylesheet" href="~/Iceshrimp.Backend.styles.css"/> 19 - <link rel="stylesheet" href="~/css/default.css"/> 18 + <link rel="stylesheet" href="~/Iceshrimp.Backend.styles.css" asp-append-version="true"/> 19 + <link rel="stylesheet" href="~/css/default.css" asp-append-version="true"/> 20 20 @* ReSharper disable once Html.PathError *@ 21 - <link rel="icon" type="image/png" href="~/favicon.png"/> 21 + <link rel="icon" type="image/png" href="~/favicon.png" asp-append-version="true"/> 22 22 <style> 23 23 .float-right { 24 24 float: right;
+6 -6
Iceshrimp.Backend/Pages/Shared/FrontendSPA.cshtml
··· 11 11 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"/> 12 12 <title>Iceshrimp.Frontend</title> 13 13 <base href="/"/> 14 - <link rel="stylesheet" href="~/css/app.css"/> 15 - <link rel="stylesheet" href="~/_content/Iceshrimp.Assets.PhosphorIcons/css/ph-regular.css"/> 16 - <link rel="stylesheet" href="~/_content/Iceshrimp.Assets.PhosphorIcons/css/ph-fill.css"/> 17 - <link rel="icon" type="image/png" href="~/favicon.png"/> 18 - <link href="~/Iceshrimp.Frontend.styles.css" rel="stylesheet"/> 14 + <link rel="stylesheet" href="~/css/app.css" asp-append-version="true"/> 15 + <link rel="stylesheet" href="~/_content/Iceshrimp.Assets.PhosphorIcons/css/ph-regular.css" asp-append-version="true"/> 16 + <link rel="stylesheet" href="~/_content/Iceshrimp.Assets.PhosphorIcons/css/ph-fill.css" asp-append-version="true"/> 17 + <link rel="icon" type="image/png" href="~/favicon.png" asp-append-version="true"/> 18 + <link rel="stylesheet" href="~/Iceshrimp.Frontend.styles.css" asp-append-version="true"/> 19 19 </head> 20 20 21 21 <body> ··· 37 37 <a class="dismiss">🗙</a> 38 38 </div> 39 39 40 - <script src="~/_framework/blazor.webassembly.js"></script> 40 + <script src="~/_framework/blazor.webassembly.js" asp-append-version="true"></script> 41 41 </body> 42 42 43 43 </html>
+3 -3
Iceshrimp.Backend/Pages/Shared/RootComponent.razor
··· 14 14 <!--suppress HtmlRequiredTitleElement, Justification: HeadOutlet --> 15 15 <head> 16 16 <meta charset="utf-8"/> 17 - <link rel="stylesheet" href="/Iceshrimp.Backend.styles.css"/> 18 - <link rel="stylesheet" href="/css/default.css"/> 19 - <link rel="icon" type="image/png" href="/favicon.png"/> 17 + <VersionedLink rel="stylesheet" href="/Iceshrimp.Backend.styles.css"/> 18 + <VersionedLink rel="stylesheet" href="/css/default.css"/> 19 + <VersionedLink rel="icon" type="image/png" href="/favicon.png"/> 20 20 <HeadOutlet/> 21 21 <PageTitle>@(_instanceName ?? "Iceshrimp.NET")</PageTitle> 22 22 </head>
+3 -3
Iceshrimp.Backend/Pages/Shared/_Layout.cshtml
··· 9 9 <meta charset="utf-8"/> 10 10 <title>@(ViewData["title"] ?? "Iceshrimp.NET")</title> 11 11 @* ReSharper disable once Html.PathError *@ 12 - <link rel="stylesheet" href="~/Iceshrimp.Backend.styles.css"/> 13 - <link rel="stylesheet" href="~/css/default.css"/> 12 + <link rel="stylesheet" href="~/Iceshrimp.Backend.styles.css" asp-append-version="true"/> 13 + <link rel="stylesheet" href="~/css/default.css" asp-append-version="true"/> 14 14 @* ReSharper disable once Html.PathError *@ 15 - <link rel="icon" type="image/png" href="~/favicon.png"/> 15 + <link rel="icon" type="image/png" href="~/favicon.png" asp-append-version="true"/> 16 16 @await RenderSectionAsync("styles", false) 17 17 @await RenderSectionAsync("head", false) 18 18 </head>
+1 -1
Iceshrimp.Backend/Pages/UserPreview.razor
··· 36 36 <meta name="og:description" content="@bio"> 37 37 } 38 38 <meta name="og:image" content="@_user.AvatarUrl"> 39 - <link rel="stylesheet" href="/css/public-preview.css"/> 39 + <VersionedLink rel="stylesheet" href="/css/public-preview.css"/> 40 40 </HeadContent> 41 41 }