|
1 | 1 | import React from 'react'; |
2 | | -import ClassNames from 'classnames'; |
| 2 | +import classnames from 'classnames'; |
3 | 3 | import style from './style'; |
4 | 4 |
|
5 | 5 | const NavDrawer = (props) => { |
| 6 | + const rootClasses = classnames([style.navDrawer], { |
| 7 | + [style['permanent-' + props.permanentAt]]: props.permanentAt, |
| 8 | + [style.wide]: (props.width === 'wide'), |
| 9 | + [style.active]: props.active, |
| 10 | + [style.pinned]: props.pinned |
| 11 | + }, props.className); |
6 | 12 |
|
7 | | - const rootClasses = ClassNames([style.navDrawer], { |
8 | | - [style['permanent-' + props.permanentAt]]: props.permanentAt, |
9 | | - [style.wide]: (props.width === 'wide'), |
10 | | - [style.active]: props.active, |
11 | | - [style.pinned]: props.pinned |
12 | | - }, props.className); |
| 13 | + const drawerClasses = classnames(style.drawerContent, { |
| 14 | + [style.scrollY]: props.scrollY |
| 15 | + }); |
13 | 16 |
|
14 | | - const drawerClasses = ClassNames(style.drawerContent, { |
15 | | - [style.scrollY]: props.scrollY |
16 | | - }); |
17 | | - |
18 | | - return ( |
19 | | - <div data-react-toolbox='nav-drawer' className={rootClasses} onClick={props.onOverlayClick}> |
20 | | - <div data-react-toolbox='nav-drawer-scrim' className={style.scrim}> |
21 | | - <aside data-react-toolbox='nav-drawer-content' className={drawerClasses}> |
22 | | - {props.children} |
23 | | - </aside> |
24 | | - </div> |
25 | | - </div> |
26 | | - ); |
| 17 | + return ( |
| 18 | + <div data-react-toolbox='nav-drawer' className={rootClasses} onClick={props.onOverlayClick}> |
| 19 | + <div data-react-toolbox='nav-drawer-scrim' className={style.scrim}> |
| 20 | + <aside data-react-toolbox='nav-drawer-content' className={drawerClasses}> |
| 21 | + {props.children} |
| 22 | + </aside> |
| 23 | + </div> |
| 24 | + </div> |
| 25 | + ); |
27 | 26 | }; |
28 | 27 |
|
29 | 28 | NavDrawer.propTypes = { |
30 | | - active: React.PropTypes.bool, |
31 | | - children: React.PropTypes.any, |
32 | | - className: React.PropTypes.string, |
33 | | - onOverlayClick: React.PropTypes.func, |
34 | | - permanentAt: React.PropTypes.oneOf(['sm', 'md', 'lg', 'xl', 'xxl', 'xxxl']), |
35 | | - pinned: React.PropTypes.bool, |
36 | | - scrollY: React.PropTypes.bool, |
37 | | - width: React.PropTypes.oneOf(['normal', 'wide']) |
| 29 | + active: React.PropTypes.bool, |
| 30 | + children: React.PropTypes.any, |
| 31 | + className: React.PropTypes.string, |
| 32 | + onOverlayClick: React.PropTypes.func, |
| 33 | + permanentAt: React.PropTypes.oneOf(['sm', 'md', 'lg', 'xl', 'xxl', 'xxxl']), |
| 34 | + pinned: React.PropTypes.bool, |
| 35 | + scrollY: React.PropTypes.bool, |
| 36 | + width: React.PropTypes.oneOf(['normal', 'wide']) |
38 | 37 | }; |
39 | 38 |
|
40 | 39 | NavDrawer.defaultProps = { |
41 | | - active: false, |
42 | | - className: '', |
43 | | - scrollY: false, |
44 | | - width: 'normal' |
| 40 | + active: false, |
| 41 | + className: '', |
| 42 | + scrollY: false, |
| 43 | + width: 'normal' |
45 | 44 | }; |
46 | 45 |
|
47 | 46 | export default NavDrawer; |
0 commit comments