From face6ebf04da2cc47ee2753e793461a409508e03 Mon Sep 17 00:00:00 2001 From: Engincan VESKE <43685404+EngincanV@users.noreply.github.com> Date: Thu, 20 Apr 2023 11:39:26 +0300 Subject: [PATCH] Normalize elementId for navigation menu items --- .../Abp/Ui/Navigation/ApplicationMenuGroup.cs | 15 +++++++++++++-- .../Volo/Abp/Ui/Navigation/ApplicationMenuItem.cs | 15 +++++++++++++-- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/framework/src/Volo.Abp.UI.Navigation/Volo/Abp/Ui/Navigation/ApplicationMenuGroup.cs b/framework/src/Volo.Abp.UI.Navigation/Volo/Abp/Ui/Navigation/ApplicationMenuGroup.cs index 469c0ad355..09cc9d15b6 100644 --- a/framework/src/Volo.Abp.UI.Navigation/Volo/Abp/Ui/Navigation/ApplicationMenuGroup.cs +++ b/framework/src/Volo.Abp.UI.Navigation/Volo/Abp/Ui/Navigation/ApplicationMenuGroup.cs @@ -5,6 +5,7 @@ namespace Volo.Abp.UI.Navigation; public class ApplicationMenuGroup { private string _displayName; + private string _elementId; /// /// Default value of a group item. @@ -32,7 +33,12 @@ public class ApplicationMenuGroup /// /// Can be used to render the element with a specific Id for DOM selections. /// - public string ElementId { get; set; } + public string ElementId { + get { return _elementId; } + set { + _elementId = NormalizeElementId(value); + } + } /// /// The Display order of the group. @@ -57,7 +63,12 @@ public class ApplicationMenuGroup private string GetDefaultElementId() { - return "MenuGroup_" + Name; + return "MenuGroup" + Name; + } + + private string NormalizeElementId(string elementId) + { + return elementId?.Replace("_", "").Replace(".", ""); } public override string ToString() diff --git a/framework/src/Volo.Abp.UI.Navigation/Volo/Abp/Ui/Navigation/ApplicationMenuItem.cs b/framework/src/Volo.Abp.UI.Navigation/Volo/Abp/Ui/Navigation/ApplicationMenuItem.cs index dc1614e3e5..9da6e09d16 100644 --- a/framework/src/Volo.Abp.UI.Navigation/Volo/Abp/Ui/Navigation/ApplicationMenuItem.cs +++ b/framework/src/Volo.Abp.UI.Navigation/Volo/Abp/Ui/Navigation/ApplicationMenuItem.cs @@ -8,6 +8,7 @@ namespace Volo.Abp.UI.Navigation; public class ApplicationMenuItem : IHasMenuItems, IHasSimpleStateCheckers { private string _displayName; + private string _elementId; /// /// Default value of a menu item. @@ -85,7 +86,12 @@ public class ApplicationMenuItem : IHasMenuItems, IHasSimpleStateCheckers /// Can be used to render the element with a specific Id for DOM selections. /// - public string ElementId { get; set; } + public string ElementId { + get { return _elementId; } + set { + _elementId = NormalizeElementId(value); + } + } /// /// Can be used to render the element with extra CSS classes. @@ -149,7 +155,12 @@ public class ApplicationMenuItem : IHasMenuItems, IHasSimpleStateCheckers