UNPKG

1.01 kBJavaScriptView Raw
1import classNames from 'classnames';
2import React, { PropTypes, Component } from 'react';
3
4
5const propTypes = {
6 /**
7 * Adds `container-fluid` class.
8 */
9 fluid: PropTypes.bool,
10 /**
11 * You can use a custom element for this component
12 */
13 componentClass: PropTypes.oneOfType([
14 React.PropTypes.element,
15 React.PropTypes.string
16 ])
17};
18
19const defaultProps = {
20 componentClass: 'div',
21 fluid: false,
22 clsPrefix: 'u-container'
23};
24
25
26class Con extends React.Component {
27 render() {
28 const { fluid, componentClass: Component, clsPrefix, className, ...others } =
29 this.props;
30
31 const tbclass = {
32 [`${clsPrefix}`]: !fluid,
33 [`${clsPrefix}-fluid`]: fluid
34 };
35
36 return (
37 <Component
38 {...others}
39 className={classNames(tbclass, className)}
40 >
41 { this.props.children }
42 </Component>
43 );
44 }
45}
46
47Con.propTypes = propTypes;
48Con.defaultProps = defaultProps;
49
50export default Con;