From f864fc6e22d59c47ba1b3aab8da9fc4a4b453e70 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Thu, 11 Jan 2024 12:08:35 -0500 Subject: [PATCH] Highlight menu group containing the active item --- netbox/project-static/dist/netbox.js | Bin 456696 -> 456754 bytes netbox/project-static/dist/netbox.js.map | Bin 370753 -> 370801 bytes netbox/project-static/src/sidenav.ts | 6 ++++-- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/netbox/project-static/dist/netbox.js b/netbox/project-static/dist/netbox.js index 4035a8b0840b68cc44ec1bd35bc6ced854c4515e..b7b1bbf88319344649a84bac224bed6fa992bc04 100644 GIT binary patch delta 2748 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 F{{c|SrXm0U diff --git a/netbox/project-static/dist/netbox.js.map b/netbox/project-static/dist/netbox.js.map index 9ecd69de00c9eb22f8e57b0c1bf1b5f77393ed18..c00343ab3c26ad487f4ee20dec4001e34240c636 100644 GIT binary patch delta 118 zcmX?jLG0rNv4$4L7N!>F7M3lnnzMM^9UT*Ok{z9^oOIl$tIlH867hC)Ox6Jkhw6Ab zIu|(W_&YiVPS2giswx<&6ABS_^aQe;E1ahH&0_V32?N#ngM^Kpw%?q^`h$tleEX%j Htod93xDzEi delta 79 zcmex(LG0iKv4$4L7N!>F7M3lnnzN=`&SF)Q^K^8L((!k6anx~lbPUxA1reT(j-Ei4 gbB5FO;#sV!)7Q>o_1?}qoAnD5qw#j8d93+d05LBaq5uE@ diff --git a/netbox/project-static/src/sidenav.ts b/netbox/project-static/src/sidenav.ts index 4dabc27b1..cf2347980 100644 --- a/netbox/project-static/src/sidenav.ts +++ b/netbox/project-static/src/sidenav.ts @@ -209,17 +209,19 @@ class SideNav { const dropdownMenu = link.closest('.dropdown-menu') as Nullable; if (isElement(dropdownMenu)) { // Find the closest `.nav-link`, which should be adjacent to the `.dropdown-menu` element. + const groupItem = dropdownMenu.parentElement; const groupLink = dropdownMenu.parentElement?.querySelector('.nav-link'); - if (isElement(groupLink)) { - groupLink.classList.add('active'); + if (isElement(groupLink) && isElement(groupItem)) { switch (action) { case 'expand': groupLink.setAttribute('aria-expanded', 'true'); + groupItem.classList.add('active'); dropdownMenu.classList.add('show'); link.classList.add('active'); break; case 'collapse': groupLink.setAttribute('aria-expanded', 'false'); + groupItem.classList.remove('active'); dropdownMenu.classList.remove('show'); link.classList.remove('active'); break;