nitin
2025-08-12 17:19:04 +05:30
committed by GitHub
parent d316f7edb9
commit 7a710aee3c
8 changed files with 18 additions and 18 deletions
@@ -10,19 +10,23 @@ import { getSettingsPath } from '~/utils/navigation/getSettingsPath';
type SettingsNavigationDrawerItemProps = {
item: SettingsNavigationItem;
subItemState?: NavigationDrawerSubItemState;
hasActiveSubItem?: boolean;
};
export const SettingsNavigationDrawerItem = ({
item,
subItemState,
hasActiveSubItem = false,
}: SettingsNavigationDrawerItemProps) => {
const href = item.path ? getSettingsPath(item.path) : '';
const pathName = useResolvedPath(href).pathname;
const isActive = !!useMatch({
const matchResult = useMatch({
path: pathName,
end: item.matchSubPages === false,
});
const isActive = !!matchResult && !hasActiveSubItem;
if (isDefined(item.isHidden) && item.isHidden) {
return null;
}
@@ -55,6 +55,7 @@ export const SettingsNavigationDrawerItems = () => {
if (Array.isArray(subItems) && subItems.length > 0) {
const selectedSubItemIndex =
getSelectedIndexForSubItems(subItems);
const hasActiveSubItem = selectedSubItemIndex !== -1;
return (
<NavigationDrawerItemGroup
@@ -62,6 +63,7 @@ export const SettingsNavigationDrawerItems = () => {
>
<SettingsNavigationDrawerItem
item={item}
hasActiveSubItem={hasActiveSubItem}
subItemState={
item.indentationLevel
? getNavigationSubItemLeftAdornment({