Browse Source

Merge branch 'dev' into Doc-Dynamic-Widget

pull/13269/head
malik masis 4 years ago
parent
commit
eb047c70d0
  1. 19
      framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/AbpDynamicLayoutComponentOptions.cs
  2. 7
      framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Components/DynamicLayoutComponent.razor
  3. 10
      framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Components/DynamicLayoutComponent.razor.cs
  4. 2
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Bundling/BundlingService.cs
  5. 5
      modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Web.BasicTheme/Themes/Basic/MainLayout.razor

19
framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/AbpDynamicLayoutComponentOptions.cs

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using JetBrains.Annotations;
namespace Volo.Abp.AspNetCore.Components.Web.Theming;
public class AbpDynamicLayoutComponentOptions
{
/// <summary>
/// Used to define components that renders in the layout
/// </summary>
[NotNull]
public Dictionary<Type, IDictionary<string,object>?> Components { get; set; }
public AbpDynamicLayoutComponentOptions()
{
Components = new Dictionary<Type, IDictionary<string, object>?>();
}
}

7
framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Components/DynamicLayoutComponent.razor

@ -0,0 +1,7 @@
@if (AbpDynamicLayoutComponentOptions.Value.Components.Any())
{
foreach (var (componentType, parameters) in AbpDynamicLayoutComponentOptions.Value.Components)
{
<DynamicComponent Type="@componentType" Parameters="@parameters" />
}
}

10
framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Components/DynamicLayoutComponent.razor.cs

@ -0,0 +1,10 @@
using Microsoft.AspNetCore.Components;
using Microsoft.Extensions.Options;
namespace Volo.Abp.AspNetCore.Components.Web.Theming.Components;
public partial class DynamicLayoutComponent : ComponentBase
{
[Inject]
protected IOptions<AbpDynamicLayoutComponentOptions> AbpDynamicLayoutComponentOptions { get; set; }
}

2
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Bundling/BundlingService.cs

@ -229,7 +229,7 @@ public class BundlingService : IBundlingService, ITransientDependency
{
var bundleContributors = module.Assembly
.GetTypes()
.Where(t => t.IsAssignableTo<IBundleContributor>())
.Where(t => !t.IsAbstract && !t.IsInterface && t.IsAssignableTo<IBundleContributor>())
.ToList();
if (bundleContributors.Count > 1)

5
modules/basic-theme/src/Volo.Abp.AspNetCore.Components.Web.BasicTheme/Themes/Basic/MainLayout.razor

@ -1,4 +1,5 @@
@inherits LayoutComponentBase
@using Volo.Abp.AspNetCore.Components.Web.Theming.Components;
@inherits LayoutComponentBase
<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">
<Branding />
@ -18,7 +19,7 @@
<div class="container">
<PageAlert />
@Body
<DynamicLayoutComponent />
<UiMessageAlert />
<UiNotificationAlert />
<UiPageProgress />

Loading…
Cancel
Save