Browse Source

Introduce IBrandingProvider in the Volo.Abp.UI package

pull/5399/head
Halil İbrahim Kalkan 6 years ago
parent
commit
950040d7a8
  1. 6
      framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/MainLayout.razor
  2. 13
      framework/src/Volo.Abp.UI/Volo/Abp/Ui/Branding/DefaultBrandingProvider.cs
  3. 17
      framework/src/Volo.Abp.UI/Volo/Abp/Ui/Branding/IBrandingProvider.cs
  4. 9
      templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/BrandingProvider.cs

6
framework/src/Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme/Themes/Basic/MainLayout.razor

@ -1,9 +1,9 @@
@inherits LayoutComponentBase
@using Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme.Themes.Basic
@using Volo.Abp.Ui.Branding
@inject IBrandingProvider BrandingProvider
<nav class="navbar navbar-expand-md navbar-dark bg-dark shadow-sm flex-column flex-md-row mb-4" id="main-navbar" style="min-height: 4rem;">
<div class="container">
<a class="navbar-brand" href="~/">My Application (TODO)</a>
<a class="navbar-brand" href="/">@BrandingProvider.AppName</a>
<button class="navbar-toggler" type="button" data-toggle="collapse"
data-target="#main-navbar-collapse" aria-controls="main-navbar-collapse"
aria-expanded="false" aria-label="Toggle navigation">

13
framework/src/Volo.Abp.UI/Volo/Abp/Ui/Branding/DefaultBrandingProvider.cs

@ -0,0 +1,13 @@
using Volo.Abp.DependencyInjection;
namespace Volo.Abp.Ui.Branding
{
public class DefaultBrandingProvider : IBrandingProvider, ITransientDependency
{
public virtual string AppName => "MyApplication";
public virtual string LogoUrl => null;
public virtual string LogoReverseUrl => null;
}
}

17
framework/src/Volo.Abp.UI/Volo/Abp/Ui/Branding/IBrandingProvider.cs

@ -0,0 +1,17 @@
namespace Volo.Abp.Ui.Branding
{
public interface IBrandingProvider
{
string AppName { get; }
/// <summary>
/// Logo on white background
/// </summary>
string LogoUrl { get; }
/// <summary>
/// Logo on dark background
/// </summary>
string LogoReverseUrl { get; }
}
}

9
templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/BrandingProvider.cs

@ -0,0 +1,9 @@
using Volo.Abp.Ui.Branding;
namespace MyCompanyName.MyProjectName.Blazor
{
public class BrandingProvider : DefaultBrandingProvider
{
public override string AppName => "MyProjectName";
}
}
Loading…
Cancel
Save