diff --git a/docs/en/framework/ui/blazor/page-toolbar-extensions.md b/docs/en/framework/ui/blazor/page-toolbar-extensions.md index dc0917fe8a..96c48b000d 100644 --- a/docs/en/framework/ui/blazor/page-toolbar-extensions.md +++ b/docs/en/framework/ui/blazor/page-toolbar-extensions.md @@ -60,7 +60,7 @@ protected override async ValueTask SetToolbarItemsAsync() { //TODO: Write your custom code return Task.CompletedTask; - }, MudBlazor.Icons.Material.Filled.FileUpload, MudBlazor.Color.Secondary); + }, MudBlazor.Icons.Material.Filled.Upload, MudBlazor.Color.Secondary); } ``` @@ -120,7 +120,7 @@ namespace MyCompanyName.MyProjectName.Blazor.Pages.Identity { //TODO: Write your custom code return Task.CompletedTask; - }, MudBlazor.Icons.Material.Filled.FileUpload, MudBlazor.Color.Secondary); + }, MudBlazor.Icons.Material.Filled.Upload, MudBlazor.Color.Secondary); } } } diff --git a/docs/en/ui-themes/lepton-x/blazor.md b/docs/en/ui-themes/lepton-x/blazor.md index 19ad552f91..07d07eea00 100644 --- a/docs/en/ui-themes/lepton-x/blazor.md +++ b/docs/en/ui-themes/lepton-x/blazor.md @@ -26,7 +26,7 @@ LeptonX theme is implemented and ready to use with ABP. No custom implementation > * `Volo.Abp.AspNetCore.Components.{Server,WebAssembly}.MudBlazorLeptonXTheme` > * `Volo.Abp.AspNetCore.Components.{Server,WebAssembly}.MudBlazorLeptonXTheme.Bundling` > * Module types: `Abp{...}MudBlazorLeptonXThemeModule`, `Abp{...}MudBlazorLeptonXThemeBundlingModule` -> * Layout namespace: `Volo.Abp.AspNetCore.Components.{Server,WebAssembly}.MudBlazorLeptonXTheme.Themes.MudBlazorLeptonX` +> * Layout components live under `Volo.Abp.AspNetCore.Components.{Web,Server,WebAssembly}.MudBlazorLeptonXTheme.Components.ApplicationLayout` (with `SideMenu`, `TopMenu`, and `PublicWebsiteLayout` sub-namespaces). {{end}} diff --git a/modules/docs/src/Volo.Docs.Application.Contracts/Volo/Docs/Documents/DocumentParameterDto.cs b/modules/docs/src/Volo.Docs.Application.Contracts/Volo/Docs/Documents/DocumentParameterDto.cs index 26d8e6aaa8..0c1df753c0 100644 --- a/modules/docs/src/Volo.Docs.Application.Contracts/Volo/Docs/Documents/DocumentParameterDto.cs +++ b/modules/docs/src/Volo.Docs.Application.Contracts/Volo/Docs/Documents/DocumentParameterDto.cs @@ -14,8 +14,8 @@ namespace Volo.Docs.Documents /// Conditional visibility: this parameter is shown only when the keyed parameter's /// current value is one of the listed values. /// Example: "DependsOn": { "UI": [ "Blazor", "BlazorServer", "BlazorWebApp" ] } - /// When null or empty the parameter is always shown. + /// An empty dictionary means the parameter is always shown. /// - public Dictionary> DependsOn { get; set; } + public Dictionary> DependsOn { get; set; } = new Dictionary>(); } } \ No newline at end of file diff --git a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml index c7a42b7e87..60dc0fd57f 100644 --- a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml +++ b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml @@ -474,7 +474,14 @@
- @if (Model.DocumentPreferences != null && Model.DocumentPreferences.Parameters != null && Model.DocumentPreferences.Parameters.Any()) + @{ + // Filter the parameters that should actually be shown (after applying DependsOn rules) + // before computing the grid layout, otherwise hidden parameters would still occupy a column slot. + var visibleParameters = Model.DocumentPreferences?.Parameters? + .Where(p => Model.IsParameterVisible(p)) + .ToList() ?? new List(); + } + @if (visibleParameters.Count > 0) {
@@ -488,10 +495,12 @@ @{ const int maxCellCount = 3; - var count = Model.DocumentPreferences.Parameters.Count; + var count = visibleParameters.Count; var rowCount = count / maxCellCount + (count % maxCellCount > 0 ? 1 : 0); var cellSize = 12 / (count > maxCellCount ? maxCellCount : count); - var latestCellSize = 12 / count - (rowCount - 1) * maxCellCount; + // Last row may have fewer items than maxCellCount; size them to fill the row width. + var lastRowCellCount = count - (rowCount - 1) * maxCellCount; + var latestCellSize = 12 / lastRowCellCount; string BuildParameterDivClass(int index) { @@ -503,10 +512,9 @@ for (var i = 0; i < count; ++i) { - var parameter = Model.DocumentPreferences.Parameters[i]; - var hiddenStyle = Model.IsParameterVisible(parameter) ? null : "display:none;"; + var parameter = visibleParameters[i]; -
+
@(parameter.DisplayName)