react-bootstrap
Version:
Bootstrap 3 components build with React
47 lines (33 loc) • 1.39 kB
JavaScript
;
var _extends = require('babel-runtime/helpers/extends')['default'];
var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default'];
exports.__esModule = true;
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _utilsValidComponentChildren = require('./utils/ValidComponentChildren');
var _utilsValidComponentChildren2 = _interopRequireDefault(_utilsValidComponentChildren);
var _classnames = require('classnames');
var _classnames2 = _interopRequireDefault(_classnames);
var Badge = _react2['default'].createClass({
displayName: 'Badge',
propTypes: {
pullRight: _react2['default'].PropTypes.bool
},
hasContent: function hasContent() {
return _utilsValidComponentChildren2['default'].hasValidComponent(this.props.children) || _react2['default'].Children.count(this.props.children) > 1 || typeof this.props.children === 'string' || typeof this.props.children === 'number';
},
render: function render() {
var classes = {
'pull-right': this.props.pullRight,
'badge': this.hasContent()
};
return _react2['default'].createElement(
'span',
_extends({}, this.props, {
className: _classnames2['default'](this.props.className, classes) }),
this.props.children
);
}
});
exports['default'] = Badge;
module.exports = exports['default'];