Skip to content

Commit f1f9b59

Browse files
committed
refactor(components): minor fixes & cleanup
1 parent 38f1816 commit f1f9b59

File tree

6 files changed

+31
-27
lines changed

6 files changed

+31
-27
lines changed

src/AsideToggler.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import React, { Component } from 'react';
22
import PropTypes from 'prop-types';
33
import classNames from 'classnames';
44
import { asideMenuCssClasses } from './Shared/index';
5-
import { ToggleClasses } from './Shared/toggle-classes';
5+
import toggleClasses from './Shared/toggle-classes';
66

77
const propTypes = {
88
children: PropTypes.node,
@@ -40,7 +40,7 @@ class AppAsideToggler extends Component {
4040
if (display && asideMenuCssClasses.indexOf(cssTemplate) > -1) {
4141
cssClass = cssTemplate;
4242
}
43-
ToggleClasses(cssClass, asideMenuCssClasses);
43+
toggleClasses(cssClass, asideMenuCssClasses);
4444
}
4545
}
4646

@@ -54,7 +54,7 @@ class AppAsideToggler extends Component {
5454
type="button"
5555
className={classes}
5656
{...attributes}
57-
onClick={this.asideToggle}
57+
onClick={(event)=>this.asideToggle(event)}
5858
>
5959
{children || <span className="navbar-toggler-icon" />}
6060
</button>

src/Breadcrumb.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,14 @@ const BreadcrumbsItem = ({ match }) => {
3131
const routeName = findRouteName(match.url);
3232
if (routeName) {
3333
return (
34-
match.isExact ?
34+
match.isExact ?
3535
<BreadcrumbItem active>{routeName}</BreadcrumbItem>
36-
:
36+
:
3737
<BreadcrumbItem>
3838
<Link to={match.url || ''}>
3939
{routeName}
4040
</Link>
4141
</BreadcrumbItem>
42-
4342
);
4443
}
4544
return null;

src/Shared/toggle-classes.js

+6-16
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,6 @@
1-
const RemoveClasses = (NewClassNames) => {
2-
const MatchClasses = NewClassNames.map(Class => document.body.classList.contains(Class));
3-
return MatchClasses.indexOf(true) !== -1;
4-
};
5-
6-
const ToggleClasses = (Toggle, ClassNames) => {
7-
const Level = ClassNames.indexOf(Toggle);
8-
const NewClassNames = ClassNames.slice(0, Level + 1);
9-
if (RemoveClasses(NewClassNames)) {
10-
NewClassNames.map(Class => document.body.classList.remove(Class));
11-
} else {
12-
document.body.classList.add(Toggle);
13-
}
14-
};
15-
16-
export { ToggleClasses };
1+
export default function toggleClasses (toggleClass, classList) {
2+
const level = classList.indexOf(toggleClass)
3+
const removeClassList = classList.slice(0, level)
4+
removeClassList.map((className) => document.body.classList.remove(className))
5+
document.body.classList.toggle(toggleClass)
6+
}

src/SidebarMinimizer.js

+16-1
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,20 @@ const defaultProps = {
1515
};
1616

1717
class AppSidebarMinimizer extends Component {
18+
constructor(props) {
19+
super(props);
20+
21+
this.handleClick = this.handleClick.bind(this);
22+
}
1823
sidebarMinimize(e) {
1924
// e.preventDefault();
2025

2126
document.body.classList.toggle('sidebar-minimized');
27+
const sidebar = document.querySelector('.sidebar-nav')
28+
if (sidebar) {
29+
sidebar.classList.toggle('ps');
30+
sidebar.classList.toggle('scrollbar-container');
31+
}
2232
}
2333

2434
brandMinimize(e) {
@@ -27,13 +37,18 @@ class AppSidebarMinimizer extends Component {
2737
document.body.classList.toggle('brand-minimized');
2838
}
2939

40+
handleClick(e) {
41+
this.sidebarMinimize(e)
42+
this.brandMinimize(e)
43+
}
44+
3045
render() {
3146
const { className, children, tag: Tag, type, ...attributes } = this.props;
3247

3348
const classes = classNames(className, 'sidebar-minimizer', 'mt-auto');
3449

3550
return (
36-
<Tag className={classes} type={type} {...attributes} onClick={(event) => { this.sidebarMinimize(event); this.brandMinimize(event); }} >
51+
<Tag className={classes} type={type} {...attributes} onClick={(event)=>this.handleClick(event)} >
3752
{children}
3853
</Tag>
3954
);

src/SidebarNav.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ class AppSidebarNav extends Component {
171171

172172
// sidebar-nav root
173173
return (
174-
<PerfectScrollbar className={navClasses} {...attributes}>
174+
<PerfectScrollbar className={navClasses} {...attributes} option={{ suppressScrollX: true }} >
175175
<Nav>
176176
{children || this.navList(navConfig.items)}
177177
</Nav>

src/SidebarToggler.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import React, { Component } from 'react';
22
import PropTypes from 'prop-types';
33
import classNames from 'classnames';
44
import { sidebarCssClasses } from './Shared/index';
5-
import { ToggleClasses } from './Shared/toggle-classes';
5+
import toggleClasses from './Shared/toggle-classes';
66

77
const propTypes = {
88
children: PropTypes.node,
@@ -38,7 +38,7 @@ class AppSidebarToggler extends Component {
3838
if (display && sidebarCssClasses.indexOf(cssTemplate) > -1) {
3939
cssClass = cssTemplate;
4040
}
41-
ToggleClasses(cssClass, sidebarCssClasses);
41+
toggleClasses(cssClass, sidebarCssClasses);
4242
}
4343
}
4444

@@ -48,7 +48,7 @@ class AppSidebarToggler extends Component {
4848
const classes = classNames(className, 'navbar-toggler');
4949

5050
return (
51-
<Tag type="button" className={classes} {...attributes} onClick={this.sidebarToggle}>
51+
<Tag type="button" className={classes} {...attributes} onClick={(event)=>this.sidebarToggle(event)}>
5252
{children || <span className="navbar-toggler-icon" />}
5353
</Tag>
5454
);

0 commit comments

Comments
 (0)