3
3
*
4
4
* General component to show menu with submenu.
5
5
*/
6
- import React , { Fragment , useCallback , useState } from " react" ;
7
- import { useLocation } from " @reach/router" ;
8
- import cn from " classnames" ;
9
- import { includes , map } from " lodash" ;
10
- import NavLink from " ../NavLink" ;
11
- import " ./styles.css" ;
6
+ import React , { Fragment , useCallback , useState } from ' react' ;
7
+ import { useLocation } from ' @reach/router' ;
8
+ import cn from ' classnames' ;
9
+ import { includes , map } from ' lodash' ;
10
+ import NavLink from ' ../NavLink' ;
11
+ import ' ./styles.css' ;
12
12
13
13
const SubMenu = ( { option } ) => {
14
14
const location = useLocation ( ) ;
15
15
16
16
const [ isOpen , setIsOpen ] = useState (
17
- includes ( map ( option . children , " path" ) , location . pathname )
17
+ includes ( map ( option . children , ' path' ) , location . pathname )
18
18
) ;
19
19
20
20
const toggleOpen = useCallback ( ( ) => {
@@ -24,8 +24,8 @@ const SubMenu = ({ option }) => {
24
24
return (
25
25
< >
26
26
< span
27
- className = { cn ( " menu-link menu-link-toggle" , {
28
- " menu-link-toggle-up" : isOpen ,
27
+ className = { cn ( ' menu-link menu-link-toggle' , {
28
+ ' menu-link-toggle-up' : isOpen ,
29
29
} ) }
30
30
onClick = { toggleOpen }
31
31
role = "button"
@@ -62,10 +62,19 @@ const Menu = ({ options, sidebarCollapsed }) => (
62
62
to = { option . path }
63
63
activeClassName = "menu-link-active"
64
64
className = "menu-link"
65
+ exact = { option . isExact }
65
66
>
66
- < img src = { option . activeIcon } className = "subroute-icon active-icon" alt = "Subroute Icon" />
67
- < img src = { option . icon } className = "subroute-icon gray-icon" alt = "Subroute Icon" />
68
- { ! sidebarCollapsed ? option . title : '' }
67
+ < img
68
+ src = { option . activeIcon }
69
+ className = "subroute-icon active-icon"
70
+ alt = "Subroute Icon"
71
+ />
72
+ < img
73
+ src = { option . icon }
74
+ className = "subroute-icon gray-icon"
75
+ alt = "Subroute Icon"
76
+ />
77
+ { ! sidebarCollapsed ? option . title : '' }
69
78
</ NavLink >
70
79
</ Fragment >
71
80
) : (
0 commit comments