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