@codementor/ui-kit
Version:
114 lines (82 loc) • 3.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = require('babel-runtime/helpers/createClass');
var _createClass3 = _interopRequireDefault(_createClass2);
var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
var _inherits2 = require('babel-runtime/helpers/inherits');
var _inherits3 = _interopRequireDefault(_inherits2);
var _style = require('styled-jsx/style');
var _style2 = _interopRequireDefault(_style);
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _propTypes = require('prop-types');
var _propTypes2 = _interopRequireDefault(_propTypes);
var _colors = require('../theme/colors');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var MenuItem = function (_PureComponent) {
(0, _inherits3.default)(MenuItem, _PureComponent);
function MenuItem() {
var _ref;
var _temp, _this, _ret;
(0, _classCallCheck3.default)(this, MenuItem);
for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
return _ret = (_temp = (_this = (0, _possibleConstructorReturn3.default)(this, (_ref = MenuItem.__proto__ || (0, _getPrototypeOf2.default)(MenuItem)).call.apply(_ref, [this].concat(args))), _this), _this._getTheme = function () {
var darkMode = _this.props.darkMode;
return darkMode ? {
background: '#00445b',
hoverBackground: _colors.navy,
color: '#fff'
} : {
background: '#fff',
hoverBackground: '#f6f6f6',
color: '#333'
};
}, _temp), (0, _possibleConstructorReturn3.default)(_this, _ret);
}
(0, _createClass3.default)(MenuItem, [{
key: 'render',
value: function render() {
var _props = this.props,
url = _props.url,
onClick = _props.onClick,
children = _props.children;
var _getTheme = this._getTheme(),
background = _getTheme.background,
hoverBackground = _getTheme.hoverBackground,
color = _getTheme.color;
return _react2.default.createElement(
'a',
{
href: url,
onClick: onClick, className: _style2.default.dynamic([['3869508687', [background, color, hoverBackground, color]]]) + ' ' + 'menu-item'
},
children,
_react2.default.createElement(_style2.default, {
styleId: '3869508687',
css: '.menu-item.__jsx-style-dynamic-selector{display:inline-block;padding:12px 16px;width:100%;font-size:14px;background:' + background + ';color:' + color + ';}.menu-item.__jsx-style-dynamic-selector:hover{-webkit-text-decoration:none;text-decoration:none;background-color:' + hoverBackground + ';color:' + color + ';}',
dynamic: [background, color, hoverBackground, color]
})
);
}
}]);
return MenuItem;
}(_react.PureComponent);
MenuItem.propTypes = {
url: _propTypes2.default.string,
onClick: _propTypes2.default.func,
darkMode: _propTypes2.default.bool,
children: _propTypes2.default.node.isRequired
};
MenuItem.defaultTypes = {
url: ''
};
exports.default = MenuItem;