UNPKG

3.77 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6
7var _extends2 = require('babel-runtime/helpers/extends');
8
9var _extends3 = _interopRequireDefault(_extends2);
10
11var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties');
12
13var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);
14
15var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
16
17var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
18
19var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
20
21var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
22
23var _createClass2 = require('babel-runtime/helpers/createClass');
24
25var _createClass3 = _interopRequireDefault(_createClass2);
26
27var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
28
29var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
30
31var _inherits2 = require('babel-runtime/helpers/inherits');
32
33var _inherits3 = _interopRequireDefault(_inherits2);
34
35var _simpleAssign = require('simple-assign');
36
37var _simpleAssign2 = _interopRequireDefault(_simpleAssign);
38
39var _react = require('react');
40
41var _react2 = _interopRequireDefault(_react);
42
43var _propTypes = require('prop-types');
44
45var _propTypes2 = _interopRequireDefault(_propTypes);
46
47function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
48
49function getStyles(props, context) {
50 var noGutter = props.noGutter;
51 var _context$muiTheme = context.muiTheme,
52 baseTheme = _context$muiTheme.baseTheme,
53 toolbar = _context$muiTheme.toolbar;
54
55
56 return {
57 root: {
58 boxSizing: 'border-box',
59 WebkitTapHighlightColor: 'rgba(0,0,0,0)', // Remove mobile color flashing (deprecated)
60 backgroundColor: toolbar.backgroundColor,
61 height: toolbar.height,
62 padding: noGutter ? 0 : '0px ' + baseTheme.spacing.desktopGutter + 'px',
63 display: 'flex',
64 justifyContent: 'space-between'
65 }
66 };
67}
68
69var Toolbar = function (_Component) {
70 (0, _inherits3.default)(Toolbar, _Component);
71
72 function Toolbar() {
73 (0, _classCallCheck3.default)(this, Toolbar);
74 return (0, _possibleConstructorReturn3.default)(this, (Toolbar.__proto__ || (0, _getPrototypeOf2.default)(Toolbar)).apply(this, arguments));
75 }
76
77 (0, _createClass3.default)(Toolbar, [{
78 key: 'render',
79 value: function render() {
80 var _props = this.props,
81 children = _props.children,
82 className = _props.className,
83 noGutter = _props.noGutter,
84 style = _props.style,
85 other = (0, _objectWithoutProperties3.default)(_props, ['children', 'className', 'noGutter', 'style']);
86 var prepareStyles = this.context.muiTheme.prepareStyles;
87
88 var styles = getStyles(this.props, this.context);
89
90 return _react2.default.createElement(
91 'div',
92 (0, _extends3.default)({}, other, { className: className, style: prepareStyles((0, _simpleAssign2.default)({}, styles.root, style)) }),
93 children
94 );
95 }
96 }]);
97 return Toolbar;
98}(_react.Component);
99
100Toolbar.defaultProps = {
101 noGutter: false
102};
103Toolbar.contextTypes = {
104 muiTheme: _propTypes2.default.object.isRequired
105};
106Toolbar.propTypes = process.env.NODE_ENV !== "production" ? {
107 /**
108 * Can be a `ToolbarGroup` to render a group of related items.
109 */
110 children: _propTypes2.default.node,
111 /**
112 * The css class name of the root element.
113 */
114 className: _propTypes2.default.string,
115 /**
116 * Do not apply `desktopGutter` to the `Toolbar`.
117 */
118 noGutter: _propTypes2.default.bool,
119 /**
120 * Override the inline-styles of the root element.
121 */
122 style: _propTypes2.default.object
123} : {};
124exports.default = Toolbar;
\No newline at end of file