UNPKG

2.53 kBJavaScriptView Raw
1import _extends from "@babel/runtime-corejs2/helpers/esm/extends";
2import _objectWithoutPropertiesLoose from "@babel/runtime-corejs2/helpers/esm/objectWithoutPropertiesLoose";
3import _inheritsLoose from "@babel/runtime-corejs2/helpers/esm/inheritsLoose";
4import _assertThisInitialized from "@babel/runtime-corejs2/helpers/esm/assertThisInitialized";
5import classNames from 'classnames';
6import React from 'react';
7import PropTypes from 'prop-types';
8import SafeAnchor from './SafeAnchor';
9import createChainedFunction from './utils/createChainedFunction';
10var propTypes = {
11 disabled: PropTypes.bool,
12 previous: PropTypes.bool,
13 next: PropTypes.bool,
14 onClick: PropTypes.func,
15 onSelect: PropTypes.func,
16 eventKey: PropTypes.any
17};
18var defaultProps = {
19 disabled: false,
20 previous: false,
21 next: false
22};
23
24var PagerItem =
25/*#__PURE__*/
26function (_React$Component) {
27 _inheritsLoose(PagerItem, _React$Component);
28
29 function PagerItem(props, context) {
30 var _this;
31
32 _this = _React$Component.call(this, props, context) || this;
33 _this.handleSelect = _this.handleSelect.bind(_assertThisInitialized(_assertThisInitialized(_this)));
34 return _this;
35 }
36
37 var _proto = PagerItem.prototype;
38
39 _proto.handleSelect = function handleSelect(e) {
40 var _this$props = this.props,
41 disabled = _this$props.disabled,
42 onSelect = _this$props.onSelect,
43 eventKey = _this$props.eventKey;
44
45 if (disabled) {
46 e.preventDefault();
47 return;
48 }
49
50 if (onSelect) {
51 onSelect(eventKey, e);
52 }
53 };
54
55 _proto.render = function render() {
56 var _this$props2 = this.props,
57 disabled = _this$props2.disabled,
58 previous = _this$props2.previous,
59 next = _this$props2.next,
60 onClick = _this$props2.onClick,
61 className = _this$props2.className,
62 style = _this$props2.style,
63 props = _objectWithoutPropertiesLoose(_this$props2, ["disabled", "previous", "next", "onClick", "className", "style"]);
64
65 delete props.onSelect;
66 delete props.eventKey;
67 return React.createElement("li", {
68 className: classNames(className, {
69 disabled: disabled,
70 previous: previous,
71 next: next
72 }),
73 style: style
74 }, React.createElement(SafeAnchor, _extends({}, props, {
75 disabled: disabled,
76 onClick: createChainedFunction(onClick, this.handleSelect)
77 })));
78 };
79
80 return PagerItem;
81}(React.Component);
82
83PagerItem.propTypes = propTypes;
84PagerItem.defaultProps = defaultProps;
85export default PagerItem;
\No newline at end of file