UNPKG

boldr-ui

Version:

UI components for Boldr

73 lines (58 loc) 2.48 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties'); var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var babelPluginFlowReactPropTypes_proptype_Children = require('react').babelPluginFlowReactPropTypes_proptype_Children || require('prop-types').any; var BaseIcon = function BaseIcon(_ref, _ref2) { var _ref2$reactIconBase = _ref2.reactIconBase, reactIconBase = _ref2$reactIconBase === undefined ? {} : _ref2$reactIconBase; var children = _ref.children, color = _ref.color, size = _ref.size, style = _ref.style, props = (0, _objectWithoutProperties3.default)(_ref, ['children', 'color', 'size', 'style']); var computedSize = size || reactIconBase.size || '1em'; function onClick(e) { if (props.onClick) { props.onClick(e); } } return _react2.default.createElement('svg', (0, _extends3.default)({ children: children, fill: 'currentColor', preserveAspectRatio: 'xMidYMid meet', height: computedSize, width: computedSize, onClick: onClick }, reactIconBase, props, { style: (0, _extends3.default)({ verticalAlign: 'middle', color: color || reactIconBase.color }, reactIconBase.style || {}, style) })); }; BaseIcon.propTypes = process.env.NODE_ENV !== "production" ? { children: typeof babelPluginFlowReactPropTypes_proptype_Children === 'function' ? babelPluginFlowReactPropTypes_proptype_Children : require('prop-types').shape(babelPluginFlowReactPropTypes_proptype_Children).isRequired, color: require('prop-types').string.isRequired, size: require('prop-types').oneOfType([require('prop-types').string, require('prop-types').number]), style: require('prop-types').object, width: require('prop-types').string, onClick: require('prop-types').func } : {}; BaseIcon.defaultProps = { color: '#fff', size: '24' }; BaseIcon.contextTypes = { iconBase: _propTypes2.default.shape(BaseIcon.propTypes) }; exports.default = BaseIcon;