react-bootstrap
Version:
Bootstrap 3 components build with React
70 lines (54 loc) • 1.92 kB
JavaScript
'use strict';
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 _classnames = require('classnames');
var _classnames2 = _interopRequireDefault(_classnames);
var _SafeAnchor = require('./SafeAnchor');
var _SafeAnchor2 = _interopRequireDefault(_SafeAnchor);
var PageItem = _react2['default'].createClass({
displayName: 'PageItem',
propTypes: {
href: _react2['default'].PropTypes.string,
target: _react2['default'].PropTypes.string,
title: _react2['default'].PropTypes.string,
disabled: _react2['default'].PropTypes.bool,
previous: _react2['default'].PropTypes.bool,
next: _react2['default'].PropTypes.bool,
onSelect: _react2['default'].PropTypes.func,
eventKey: _react2['default'].PropTypes.any
},
render: function render() {
var classes = {
'disabled': this.props.disabled,
'previous': this.props.previous,
'next': this.props.next
};
return _react2['default'].createElement(
'li',
_extends({}, this.props, {
className: _classnames2['default'](this.props.className, classes) }),
_react2['default'].createElement(
_SafeAnchor2['default'],
{
href: this.props.href,
title: this.props.title,
target: this.props.target,
onClick: this.handleSelect },
this.props.children
)
);
},
handleSelect: function handleSelect(e) {
if (this.props.onSelect || this.props.disabled) {
e.preventDefault();
if (!this.props.disabled) {
this.props.onSelect(this.props.eventKey, this.props.href, this.props.target);
}
}
}
});
exports['default'] = PageItem;
module.exports = exports['default'];