diff --git a/Models/AppConfiguration.cs b/Models/AppConfiguration.cs new file mode 100644 index 0000000..db7e396 --- /dev/null +++ b/Models/AppConfiguration.cs @@ -0,0 +1,6 @@ +namespace decePubClient.Models; + +public class AppConfiguration +{ + public string Version { get; set; } +} \ No newline at end of file diff --git a/Program.cs b/Program.cs index 7dd32ee..69397fa 100644 --- a/Program.cs +++ b/Program.cs @@ -7,10 +7,12 @@ using Append.Blazor.Notifications; using Blazored.LocalStorage; using Blazored.Modal; using decePubClient.Extensions; +using decePubClient.Models; using decePubClient.Services; using Microsoft.AspNetCore.Components.WebAssembly.Authentication; using Toolbelt.Blazor.Extensions.DependencyInjection; using Microsoft.AspNetCore.Components.Authorization; +using Microsoft.Extensions.Options; var builder = WebAssemblyHostBuilder.CreateDefault(args); builder.RootComponents.Add("#app"); @@ -66,6 +68,11 @@ builder.Services.AddHttpClient("ComponentsWebAssembly_CSharp.ServerAPI", client builder.Services.AddTransient(sp => sp.GetRequiredService().CreateClient("ComponentsWebAssembly_CSharp.ServerAPI")); builder.Services.AddScoped(); +builder.Services.AddSingleton(serviceProvider => +{ + var conf = serviceProvider.GetRequiredService(); + return conf.GetSection(nameof(AppConfiguration)).Get(); +}); var host = builder.Build(); await host.SetDefaultCulture(); diff --git a/Shared/MainLayout.razor.css b/Shared/MainLayout.razor.css deleted file mode 100644 index c865427..0000000 --- a/Shared/MainLayout.razor.css +++ /dev/null @@ -1,81 +0,0 @@ -.page { - position: relative; - display: flex; - flex-direction: column; -} - -main { - flex: 1; -} - -.sidebar { - background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%); -} - -.top-row { - background-color: #f7f7f7; - border-bottom: 1px solid #d6d5d5; - justify-content: flex-end; - height: 3.5rem; - display: flex; - align-items: center; -} - - .top-row ::deep a, .top-row ::deep .btn-link { - white-space: nowrap; - margin-left: 1.5rem; - text-decoration: none; - } - - .top-row ::deep a:hover, .top-row ::deep .btn-link:hover { - text-decoration: underline; - } - - .top-row ::deep a:first-child { - overflow: hidden; - text-overflow: ellipsis; - } - -@media (max-width: 640.98px) { - .top-row:not(.auth) { - display: none; - } - - .top-row.auth { - justify-content: space-between; - } - - .top-row ::deep a, .top-row ::deep .btn-link { - margin-left: 0; - } -} - -@media (min-width: 641px) { - .page { - flex-direction: row; - } - - .sidebar { - width: 250px; - height: 100vh; - position: sticky; - top: 0; - } - - .top-row { - position: sticky; - top: 0; - z-index: 1; - } - - .top-row.auth ::deep a:first-child { - flex: 1; - text-align: right; - width: 0; - } - - .top-row, article { - padding-left: 2rem !important; - padding-right: 1.5rem !important; - } -} diff --git a/Shared/NavMenu.razor.css b/Shared/NavMenu.razor.css deleted file mode 100644 index acc5f9f..0000000 --- a/Shared/NavMenu.razor.css +++ /dev/null @@ -1,62 +0,0 @@ -.navbar-toggler { - background-color: rgba(255, 255, 255, 0.1); -} - -.top-row { - height: 3.5rem; - background-color: rgba(0,0,0,0.4); -} - -.navbar-brand { - font-size: 1.1rem; -} - -.oi { - width: 2rem; - font-size: 1.1rem; - vertical-align: text-top; - top: -2px; -} - -.nav-item { - font-size: 0.9rem; - padding-bottom: 0.5rem; -} - - .nav-item:first-of-type { - padding-top: 1rem; - } - - .nav-item:last-of-type { - padding-bottom: 1rem; - } - - .nav-item ::deep a { - color: #d7d7d7; - border-radius: 4px; - height: 3rem; - display: flex; - align-items: center; - line-height: 3rem; - } - -.nav-item ::deep a.active { - background-color: rgba(255,255,255,0.25); - color: white; -} - -.nav-item ::deep a:hover { - background-color: rgba(255,255,255,0.1); - color: white; -} - -@media (min-width: 641px) { - .navbar-toggler { - display: none; - } - - .collapse { - /* Never collapse the sidebar for wide screens */ - display: block; - } -} diff --git a/decePubClient.csproj b/decePubClient.csproj index 3eb3ff3..2240445 100644 --- a/decePubClient.csproj +++ b/decePubClient.csproj @@ -37,6 +37,56 @@ True ErrorMessages.resx + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wwwroot/appsettings.json b/wwwroot/appsettings.json index 4290191..64df850 100644 --- a/wwwroot/appsettings.json +++ b/wwwroot/appsettings.json @@ -9,5 +9,8 @@ "ResponseMode": "", "AdditionalProviderParameters": [], "DefaultScopes": [] + }, + "AppConfiguration": { + "Version": "0.1" } }