Files
optolith-client/js/components/Slidein.js
T
Lukas Obermann e1927227bf Changed data objects to ES6 classes
Additionally changed folder structure to components and views
2016-11-14 00:18:09 +01:00

35 lines
794 B
JavaScript

import GeminiScrollbar from 'react-gemini-scrollbar';
import React, { Component, PropTypes } from 'react';
import classNames from 'classnames';
class Slidein extends Component {
static propTypes = {
isOpen: PropTypes.bool
};
shouldComponentUpdate(nextProps) {
return nextProps.isOpen !== this.props.isOpen || this.props.isOpen === true;
}
render() {
const className = classNames('slidein-backdrop', { 'slidein-open': this.props.isOpen });
return (
<div className={className}>
<div className="slidein">
<div className="slidein-close" onClick={this.props.close}><div>&#xE5CD;</div></div>
<div className="slidein-content">
{
this.props.isOpen ? this.props.children : null
}
</div>
</div>
</div>
);
}
}
export default Slidein;