1 | import _extends from "@babel/runtime/helpers/esm/extends";
|
2 | import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
3 |
|
4 |
|
5 | import classNames from 'classnames';
|
6 | import React from 'react';
|
7 | import SafeAnchor from './SafeAnchor';
|
8 | var defaultProps = {
|
9 | active: false,
|
10 | disabled: false,
|
11 | activeLabel: '(current)'
|
12 | };
|
13 | var PageItem = React.forwardRef(function (_ref, ref) {
|
14 | var active = _ref.active,
|
15 | disabled = _ref.disabled,
|
16 | className = _ref.className,
|
17 | style = _ref.style,
|
18 | activeLabel = _ref.activeLabel,
|
19 | children = _ref.children,
|
20 | props = _objectWithoutPropertiesLoose(_ref, ["active", "disabled", "className", "style", "activeLabel", "children"]);
|
21 |
|
22 | var Component = active || disabled ? 'span' : SafeAnchor;
|
23 | return React.createElement("li", {
|
24 | ref: ref,
|
25 | style: style,
|
26 | className: classNames(className, 'page-item', {
|
27 | active: active,
|
28 | disabled: disabled
|
29 | })
|
30 | }, React.createElement(Component, _extends({
|
31 | className: "page-link",
|
32 | disabled: disabled
|
33 | }, props), children, active && activeLabel && React.createElement("span", {
|
34 | className: "sr-only"
|
35 | }, activeLabel)));
|
36 | });
|
37 | PageItem.defaultProps = defaultProps;
|
38 | PageItem.displayName = 'PageItem';
|
39 | export default PageItem;
|
40 |
|
41 | function createButton(name, defaultValue, label) {
|
42 | if (label === void 0) {
|
43 | label = name;
|
44 | }
|
45 |
|
46 | function Button(_ref2) {
|
47 | var children = _ref2.children,
|
48 | props = _objectWithoutPropertiesLoose(_ref2, ["children"]);
|
49 |
|
50 | return React.createElement(PageItem, props, React.createElement("span", {
|
51 | "aria-hidden": "true"
|
52 | }, children || defaultValue), React.createElement("span", {
|
53 | className: "sr-only"
|
54 | }, label));
|
55 | }
|
56 |
|
57 | Button.displayName = name;
|
58 | return Button;
|
59 | }
|
60 |
|
61 | export var First = createButton('First', '«');
|
62 | export var Prev = createButton('Prev', '‹', 'Previous');
|
63 | export var Ellipsis = createButton('Ellipsis', '…', 'More');
|
64 | export var Next = createButton('Next', '›');
|
65 | export var Last = createButton('Last', '»'); |
\ | No newline at end of file |