UNPKG

backpack-ui

Version:

Lonely Planet's Components

92 lines (67 loc) 1.91 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _react = require("react"); var _react2 = _interopRequireDefault(_react); var _radium = require("radium"); var _radium2 = _interopRequireDefault(_radium); var _upperFirst = require("lodash/upperFirst"); var _upperFirst2 = _interopRequireDefault(_upperFirst); var _styles = require("./styles"); var _styles2 = _interopRequireDefault(_styles); var _icon = require("../icon"); var _icon2 = _interopRequireDefault(_icon); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var _ = { upperFirst: _upperFirst2.default }; function ShareMenuItem(_ref) { var network = _ref.network; var href = _ref.href; var label = _ref.label; var onClick = _ref.onClick; var NetworkIcon = _react2.default.createElement(_icon2.default[_.upperFirst(network)], { height: "16px", width: "16px" }); return _react2.default.createElement( "a", { className: "ShareMenu-item", style: _styles2.default.item.base, "data-network": network, onClick: onClick, href: href }, NetworkIcon, _react2.default.createElement( "span", { style: _styles2.default.item.label }, label ) ); } ShareMenuItem.propTypes = { /** * Slugified name of the sharable network */ network: _react2.default.PropTypes.oneOf(["twitter", "facebook", "email"]).isRequired, /** * URL of network's share method */ href: _react2.default.PropTypes.string.isRequired, /** * Text label to show next to icon */ label: _react2.default.PropTypes.string.isRequired, /** * Function to run when button is clicked */ onClick: _react2.default.PropTypes.func }; ShareMenuItem.defaultProps = { network: "", href: "", label: "", onClick: null }; exports.default = (0, _radium2.default)(ShareMenuItem);