carbon-react 111.22.4 → 112.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/esm/components/pager/__internal__/pager-navigation-link.component.d.ts +17 -0
  2. package/esm/components/pager/__internal__/pager-navigation-link.component.js +16 -25
  3. package/esm/components/pager/__internal__/pager-navigation.component.d.ts +28 -0
  4. package/esm/components/pager/__internal__/pager-navigation.component.js +22 -43
  5. package/esm/components/pager/index.d.ts +2 -2
  6. package/esm/components/pager/pager.component.d.ts +43 -0
  7. package/esm/components/pager/pager.component.js +33 -66
  8. package/esm/components/pager/pager.style.d.ts +12 -0
  9. package/esm/components/pager/pager.style.js +2 -2
  10. package/esm/components/select/__internal__/select-text/select-text.style.d.ts +2 -0
  11. package/esm/components/select/option/index.d.ts +5 -0
  12. package/esm/locales/locale.d.ts +1 -1
  13. package/lib/components/pager/__internal__/pager-navigation-link.component.d.ts +17 -0
  14. package/lib/components/pager/__internal__/pager-navigation-link.component.js +15 -24
  15. package/lib/components/pager/__internal__/pager-navigation.component.d.ts +28 -0
  16. package/lib/components/pager/__internal__/pager-navigation.component.js +22 -43
  17. package/lib/components/pager/index.d.ts +2 -2
  18. package/lib/components/pager/pager.component.d.ts +43 -0
  19. package/lib/components/pager/pager.component.js +34 -68
  20. package/lib/components/pager/pager.style.d.ts +12 -0
  21. package/lib/components/pager/pager.style.js +3 -3
  22. package/lib/components/select/__internal__/select-text/select-text.style.d.ts +2 -0
  23. package/lib/components/select/option/index.d.ts +5 -0
  24. package/lib/locales/locale.d.ts +1 -1
  25. package/package.json +1 -1
  26. package/esm/components/pager/pager.d.ts +0 -42
  27. package/lib/components/pager/pager.d.ts +0 -42
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ interface PagerNavigationLinkProps {
3
+ /** Type of Pagination link to be allowed for navigation */
4
+ type: "next" | "previous" | "first" | "last";
5
+ /** Current visible page */
6
+ currentPage: number;
7
+ /** Count of all the pages */
8
+ pageCount: number;
9
+ /** Pagination page size */
10
+ pageSize: number;
11
+ /** onClick Callback function */
12
+ onClick?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
13
+ /** onPagination Callback to process pagination */
14
+ onPagination?: (pageSize: number, currentPage: number, origin: string) => void;
15
+ }
16
+ declare const PagerNavigationLink: ({ type, currentPage, pageCount, pageSize, onClick, onPagination, }: PagerNavigationLinkProps) => JSX.Element;
17
+ export default PagerNavigationLink;
@@ -1,6 +1,6 @@
1
1
  import React, { useRef, useEffect, useCallback } from "react";
2
2
  import PropTypes from "prop-types";
3
- import { StyledPagerLinkStyles } from "../pager.style";
3
+ import { StyledPagerLink } from "../pager.style";
4
4
  import useLocale from "../../../hooks/__internal__/useLocale";
5
5
 
6
6
  const PagerNavigationLink = ({
@@ -12,11 +12,11 @@ const PagerNavigationLink = ({
12
12
  onPagination
13
13
  }) => {
14
14
  const l = useLocale();
15
- const linkRef = useRef();
15
+ const linkRef = useRef(null);
16
16
  const navLinkConfig = {
17
17
  first: {
18
18
  text: l.pager.first(),
19
- destination: "1"
19
+ destination: 1
20
20
  },
21
21
  last: {
22
22
  text: l.pager.last(),
@@ -48,39 +48,30 @@ const PagerNavigationLink = ({
48
48
  }
49
49
  }, [disabled]);
50
50
 
51
- const handleOnCLick = e => {
52
- onClick(e);
53
- onPagination(navLinkConfig[type].destination, pageSize, type);
51
+ const handleOnCLick = ev => {
52
+ onClick === null || onClick === void 0 ? void 0 : onClick(ev);
53
+ onPagination === null || onPagination === void 0 ? void 0 : onPagination(navLinkConfig[type].destination, pageSize, type);
54
54
  };
55
55
 
56
56
  const {
57
57
  text
58
58
  } = navLinkConfig[type];
59
- return /*#__PURE__*/React.createElement(StyledPagerLinkStyles, {
59
+ return /*#__PURE__*/React.createElement(StyledPagerLink, {
60
60
  "data-element": `pager-link-${type}`,
61
61
  disabled: disabled(),
62
- onClick: handleOnCLick,
62
+ onClick: // Type assertion due to the fact that StyledPagerLink
63
+ // will always return a button element
64
+ handleOnCLick,
63
65
  ref: linkRef
64
66
  }, text);
65
67
  };
66
68
 
67
69
  PagerNavigationLink.propTypes = {
68
- /** Type of Pagination link to be allowed for navigation */
69
- type: PropTypes.oneOf(["next", "previous", "first", "last"]).isRequired,
70
-
71
- /** Current visible page */
72
- currentPage: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
73
-
74
- /** Count of all the pages */
75
- pageCount: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
76
-
77
- /** Pagination page size */
78
- pageSize: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
79
-
80
- /** onClick Callback function */
81
- onClick: PropTypes.func,
82
-
83
- /** onPagination Callback to process pagination */
84
- onPagination: PropTypes.func
70
+ "currentPage": PropTypes.number.isRequired,
71
+ "onClick": PropTypes.func,
72
+ "onPagination": PropTypes.func,
73
+ "pageCount": PropTypes.number.isRequired,
74
+ "pageSize": PropTypes.number.isRequired,
75
+ "type": PropTypes.oneOf(["first", "last", "next", "previous"]).isRequired
85
76
  };
86
77
  export default PagerNavigationLink;
@@ -0,0 +1,28 @@
1
+ import React from "react";
2
+ export interface PagerNavigationProps {
3
+ /** Current visible page */
4
+ currentPage: number;
5
+ /** Pagination page size */
6
+ pageSize: number;
7
+ pageCount: number;
8
+ /** Sets the current page being shown */
9
+ setCurrentPage: (page: number) => void;
10
+ /** Callback function for next link */
11
+ onNext?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
12
+ /** Callback function for first link */
13
+ onFirst?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
14
+ /** Callback function for previous link */
15
+ onPrevious?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
16
+ /** Callback function for last link */
17
+ onLast?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
18
+ /** onPagination Callback triggered when a change is triggered */
19
+ onPagination: (pageSize: number, currentPage: number, origin: string) => void;
20
+ /** Should the `First` and `Last` navigation buttons be shown */
21
+ showFirstAndLastButtons?: boolean;
22
+ /** Should the `Next` and `Previous` navigation buttons be shown */
23
+ showPreviousAndNextButtons?: boolean;
24
+ /** Should the page count input be shown */
25
+ showPageCount?: boolean;
26
+ }
27
+ declare const PagerNavigation: ({ pageSize, currentPage, setCurrentPage, onNext, onPrevious, onFirst, onLast, onPagination, pageCount, showFirstAndLastButtons, showPreviousAndNextButtons, showPageCount, }: PagerNavigationProps) => JSX.Element;
28
+ export default PagerNavigation;
@@ -36,31 +36,33 @@ const PagerNavigation = ({
36
36
  };
37
37
 
38
38
  const handlePageInputChange = ev => {
39
+ const pageNumber = +ev.target.value;
40
+
39
41
  if (pageCount === 0) {
40
42
  setCurrentPage(0);
41
43
  onPagination(0, pageSize, "input");
42
- return "0";
44
+ return 0;
43
45
  }
44
46
 
45
- if (Number(ev.target.value) <= 0 || Number.isNaN(Number(ev.target.value))) {
47
+ if (pageNumber <= 0 || Number.isNaN(pageNumber)) {
46
48
  setCurrentPage(1);
47
49
  onPagination(1, pageSize, "input");
48
- return "1";
50
+ return 1;
49
51
  }
50
52
 
51
- if (Number(ev.target.value) > pageCount) {
53
+ if (pageNumber > pageCount) {
52
54
  setCurrentPage(pageCount);
53
55
  onPagination(pageCount, pageSize, "input");
54
56
  return pageCount;
55
57
  }
56
58
 
57
- setCurrentPage(Number(ev.target.value));
58
- onPagination(Number(ev.target.value), pageSize, "input");
59
- return ev.target.value;
59
+ setCurrentPage(pageNumber);
60
+ onPagination(pageNumber, pageSize, "input");
61
+ return pageNumber;
60
62
  };
61
63
 
62
64
  const handleCurrentPageChange = e => {
63
- setCurrentPage(e.target.value);
65
+ setCurrentPage(+e.target.value);
64
66
  };
65
67
 
66
68
  const renderButtonsBeforeCount = () => /*#__PURE__*/React.createElement(React.Fragment, null, !hasTwoPages && showFirstAndLastButtons && /*#__PURE__*/React.createElement(PagerNavigationLink, _extends({
@@ -92,40 +94,17 @@ const PagerNavigation = ({
92
94
  };
93
95
 
94
96
  PagerNavigation.propTypes = {
95
- /** Current visible page */
96
- currentPage: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
97
-
98
- /** Pagination page size */
99
- pageSize: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
100
-
101
- /* Count of all of the pages */
102
- pageCount: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
103
-
104
- /** Sets the current page being shown */
105
- setCurrentPage: PropTypes.func,
106
-
107
- /** onFirst Callback triggered when first link is triggered */
108
- onFirst: PropTypes.func,
109
-
110
- /** onPrevious Callback triggered when previous link is triggered */
111
- onPrevious: PropTypes.func,
112
-
113
- /** onNext Callback triggered when next link is triggered */
114
- onNext: PropTypes.func,
115
-
116
- /** onLast Callback triggered when last link is triggered */
117
- onLast: PropTypes.func,
118
-
119
- /** onPagination Callback triggered when a change is triggered */
120
- onPagination: PropTypes.func,
121
-
122
- /** Should the `First` and `Last` navigation buttons be shown */
123
- showFirstAndLastButtons: PropTypes.bool,
124
-
125
- /** Should the `Next` and `Previous` navigation buttons be shown */
126
- showPreviousAndNextButtons: PropTypes.bool,
127
-
128
- /** Should the page count input be shown */
129
- showPageCount: PropTypes.bool
97
+ "currentPage": PropTypes.number.isRequired,
98
+ "onFirst": PropTypes.func,
99
+ "onLast": PropTypes.func,
100
+ "onNext": PropTypes.func,
101
+ "onPagination": PropTypes.func.isRequired,
102
+ "onPrevious": PropTypes.func,
103
+ "pageCount": PropTypes.number.isRequired,
104
+ "pageSize": PropTypes.number.isRequired,
105
+ "setCurrentPage": PropTypes.func.isRequired,
106
+ "showFirstAndLastButtons": PropTypes.bool,
107
+ "showPageCount": PropTypes.bool,
108
+ "showPreviousAndNextButtons": PropTypes.bool
130
109
  };
131
110
  export default PagerNavigation;
@@ -1,2 +1,2 @@
1
- export { default } from "./pager";
2
- export * from "./pager";
1
+ export { default } from "./pager.component";
2
+ export type { PagerProps } from "./pager.component";
@@ -0,0 +1,43 @@
1
+ import React from "react";
2
+ declare type PageSizeOption = {
3
+ id: string;
4
+ name: number;
5
+ };
6
+ export interface PagerProps {
7
+ /** Function called when pager changes (PageSize, Current Page) */
8
+ onPagination: (pageSize: number, currentPage: number, origin: string) => void;
9
+ /** Callback function for next link */
10
+ onNext?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
11
+ /** Callback function for first link */
12
+ onFirst?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
13
+ /** Callback function for previous link */
14
+ onPrevious?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
15
+ /** Callback function for last link */
16
+ onLast?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
17
+ /** Current visible page */
18
+ currentPage?: number | string;
19
+ /** Total number of records */
20
+ totalRecords?: number | string;
21
+ /** Pagination page size */
22
+ pageSize?: number | string;
23
+ /** Should the page size selection dropdown be shown */
24
+ showPageSizeSelection?: boolean;
25
+ /** Set of page size options */
26
+ pageSizeSelectionOptions?: PageSizeOption[];
27
+ /** Should the label before the page size selection dropdown be shown */
28
+ showPageSizeLabelBefore?: boolean;
29
+ /** Should the label after the page size selection dropdown be shown */
30
+ showPageSizeLabelAfter?: boolean;
31
+ /** Should the total records label be shown */
32
+ showTotalRecords?: boolean;
33
+ /** Should the `First` and `Last` navigation button be shown */
34
+ showFirstAndLastButtons?: boolean;
35
+ /** Should the `Previous` and `Next` navigation button be shown */
36
+ showPreviousAndNextButtons?: boolean;
37
+ /** Should the page count input be shown */
38
+ showPageCount?: boolean;
39
+ /** What variant the Pager background should be */
40
+ variant?: "default" | "alternate";
41
+ }
42
+ export declare const Pager: ({ currentPage, pageSizeSelectionOptions, pageSize, showPageSizeSelection, totalRecords, onPagination, onNext, onFirst, onPrevious, onLast, showPageSizeLabelBefore, showPageSizeLabelAfter, showTotalRecords, showFirstAndLastButtons, showPreviousAndNextButtons, showPageCount, variant, ...rest }: PagerProps) => JSX.Element;
43
+ export default Pager;
@@ -2,9 +2,8 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
2
2
 
3
3
  import React, { useState, useCallback, useEffect, useRef } from "react";
4
4
  import PropTypes from "prop-types";
5
- import { Select } from "../select";
5
+ import { Select, Option } from "../select";
6
6
  import PagerNavigation from "./__internal__/pager-navigation.component";
7
- import Option from "../select/option/option.component";
8
7
  import useLocale from "../../hooks/__internal__/useLocale";
9
8
  import createGuid from "../../__internal__/utils/helpers/guid";
10
9
  import { StyledPagerContainer, StyledPagerSizeOptions, StyledPagerSummary, StyledPagerSizeOptionsInner, StyledSelectContainer } from "./pager.style";
@@ -43,31 +42,31 @@ const Pager = ({
43
42
  ...rest
44
43
  }) => {
45
44
  const l = useLocale();
46
- const [page, setPage] = useState(currentPage);
47
- const [currentPageSize, setCurrentPageSize] = useState(pageSize);
48
- const [value, setValue] = useState(pageSize);
45
+ const [page, setPage] = useState(+currentPage);
46
+ const [currentPageSize, setCurrentPageSize] = useState(+pageSize);
47
+ const [value, setValue] = useState(+pageSize);
49
48
  const guid = useRef(createGuid());
50
49
  const pageSizeSelectId = `Pager_size_selector_${guid.current}`;
51
50
  const getPageCount = useCallback(() => {
52
- if (Number(totalRecords) < 0 || Number.isNaN(Number(totalRecords))) {
51
+ if (+totalRecords < 0 || Number.isNaN(+totalRecords)) {
53
52
  return 1;
54
53
  }
55
54
 
56
- return Math.ceil(totalRecords / currentPageSize);
55
+ return Math.ceil(+totalRecords / currentPageSize);
57
56
  }, [totalRecords, currentPageSize]);
58
57
  const [pageCount, setPageCount] = useState(getPageCount());
59
58
  useEffect(() => {
60
- setCurrentPageSize(Number(pageSize));
61
- setValue(pageSize);
59
+ setCurrentPageSize(+pageSize);
60
+ setValue(+pageSize);
62
61
  }, [pageSize]);
63
62
  useEffect(() => {
64
63
  const maxPage = getPageCount();
65
64
  setPageCount(maxPage);
66
65
 
67
- if (Number(currentPage) > maxPage) {
66
+ if (+currentPage > maxPage) {
68
67
  setPage(maxPage);
69
68
  } else {
70
- setPage(Number(currentPage));
69
+ setPage(+currentPage);
71
70
  }
72
71
  }, [currentPageSize, pageCount, currentPage, totalRecords, getPageCount]);
73
72
  const handleOnFirst = useCallback(e => {
@@ -102,15 +101,15 @@ const Pager = ({
102
101
  }, [page, onPrevious]);
103
102
  const handleOnPagination = useCallback(e => {
104
103
  setValue(e.target.value);
105
- setCurrentPageSize(Number(e.target.value));
106
- onPagination(1, Number(e.target.value), "page-select");
104
+ setCurrentPageSize(+e.target.value);
105
+ onPagination(1, +e.target.value, "page-select");
107
106
  }, [onPagination]);
108
107
  const handleKeyDown = useCallback(e => Events.isEnterKey(e) && handleOnPagination(e), [handleOnPagination]);
109
108
 
110
109
  const sizeSelector = () => {
111
110
  return /*#__PURE__*/React.createElement(StyledSelectContainer, null, /*#__PURE__*/React.createElement(Select, {
112
111
  value: String(value),
113
- onChange: ev => setValue(ev.target.value),
112
+ onChange: ev => setValue(+ev.target.value),
114
113
  onBlur: () => setValue(currentPageSize),
115
114
  onKeyDown: handleKeyDown,
116
115
  "data-element": "page-select",
@@ -151,58 +150,26 @@ const Pager = ({
151
150
  };
152
151
 
153
152
  Pager.propTypes = {
154
- /** Function called when pager changes (PageSize, Current Page) */
155
- onPagination: PropTypes.func.isRequired,
156
-
157
- /** Callback function for next link */
158
- onNext: PropTypes.func,
159
-
160
- /** Callback function for first link */
161
- onFirst: PropTypes.func,
162
-
163
- /** Callback function for previous link */
164
- onPrevious: PropTypes.func,
165
-
166
- /** Callback function for last link */
167
- onLast: PropTypes.func,
168
-
169
- /** Current visible page */
170
- currentPage: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
171
-
172
- /** Total number of records */
173
- totalRecords: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
174
-
175
- /** Pagination page size */
176
- pageSize: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
177
-
178
- /** Set of page size options */
179
- pageSizeSelectionOptions: PropTypes.arrayOf(PropTypes.shape({
180
- id: PropTypes.string,
181
- name: PropTypes.oneOfType([PropTypes.string, PropTypes.number])
153
+ "currentPage": PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
154
+ "onFirst": PropTypes.func,
155
+ "onLast": PropTypes.func,
156
+ "onNext": PropTypes.func,
157
+ "onPagination": PropTypes.func.isRequired,
158
+ "onPrevious": PropTypes.func,
159
+ "pageSize": PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
160
+ "pageSizeSelectionOptions": PropTypes.arrayOf(PropTypes.shape({
161
+ "id": PropTypes.string.isRequired,
162
+ "name": PropTypes.number.isRequired
182
163
  })),
183
-
184
- /** Should the page size selection dropdown be shown */
185
- showPageSizeSelection: PropTypes.bool,
186
-
187
- /** Should the label before the page size selection dropdown be shown */
188
- showPageSizeLabelBefore: PropTypes.bool,
189
-
190
- /** Should the label after the page size selection dropdown be shown */
191
- showPageSizeLabelAfter: PropTypes.bool,
192
-
193
- /** Should the total records label be shown */
194
- showTotalRecords: PropTypes.bool,
195
-
196
- /** Should the `First` and `Last` navigation button be shown */
197
- showFirstAndLastButtons: PropTypes.bool,
198
-
199
- /** Should the `Previous` and `Next` navigation button be shown */
200
- showPreviousAndNextButtons: PropTypes.bool,
201
-
202
- /** Should the page count input be shown */
203
- showPageCount: PropTypes.bool,
204
-
205
- /** What variant the Pager background should be */
206
- variant: PropTypes.oneOf(["default", "alternate"])
164
+ "showFirstAndLastButtons": PropTypes.bool,
165
+ "showPageCount": PropTypes.bool,
166
+ "showPageSizeLabelAfter": PropTypes.bool,
167
+ "showPageSizeLabelBefore": PropTypes.bool,
168
+ "showPageSizeSelection": PropTypes.bool,
169
+ "showPreviousAndNextButtons": PropTypes.bool,
170
+ "showTotalRecords": PropTypes.bool,
171
+ "totalRecords": PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
172
+ "variant": PropTypes.oneOf(["alternate", "default"])
207
173
  };
174
+ export { Pager };
208
175
  export default Pager;
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import { PagerProps } from ".";
3
+ declare const StyledSelectContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
4
+ declare const StyledPagerContainer: import("styled-components").StyledComponent<"div", any, Pick<PagerProps, "variant">, never>;
5
+ declare const StyledPagerSizeOptions: import("styled-components").StyledComponent<"div", any, {}, never>;
6
+ declare const StyledPagerSizeOptionsInner: import("styled-components").StyledComponent<"div", any, {}, never>;
7
+ declare const StyledPagerNavigation: import("styled-components").StyledComponent<"div", any, {}, never>;
8
+ declare const StyledPagerNavInner: import("styled-components").StyledComponent<"div", any, {}, never>;
9
+ declare const StyledPagerLink: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../link").LinkProps & import("react").RefAttributes<HTMLButtonElement | HTMLLinkElement>>, any, {}, never>;
10
+ declare const StyledPagerNoSelect: import("styled-components").StyledComponent<"div", any, {}, never>;
11
+ declare const StyledPagerSummary: import("styled-components").StyledComponent<"div", any, {}, never>;
12
+ export { StyledPagerContainer, StyledPagerSizeOptions, StyledPagerSizeOptionsInner, StyledPagerNavigation, StyledPagerNavInner, StyledPagerLink, StyledPagerNoSelect, StyledPagerSummary, StyledSelectContainer, };
@@ -95,7 +95,7 @@ const StyledPagerNavInner = styled.div`
95
95
  margin-bottom: 0;
96
96
  }
97
97
  `;
98
- const StyledPagerLinkStyles = styled(Link)`
98
+ const StyledPagerLink = styled(Link)`
99
99
  padding: 0 10px;
100
100
  margin-left: 7px;
101
101
  margin-right: 7px;
@@ -110,4 +110,4 @@ const StyledPagerSummary = styled.div`
110
110
  flex: 1 1 30%;
111
111
  justify-content: flex-end;
112
112
  `;
113
- export { StyledPagerContainer, StyledPagerSizeOptions, StyledPagerSizeOptionsInner, StyledPagerNavigation, StyledPagerNavInner, StyledPagerLinkStyles, StyledPagerNoSelect, StyledPagerSummary, StyledSelectContainer };
113
+ export { StyledPagerContainer, StyledPagerSizeOptions, StyledPagerSizeOptionsInner, StyledPagerNavigation, StyledPagerNavInner, StyledPagerLink, StyledPagerNoSelect, StyledPagerSummary, StyledSelectContainer };
@@ -0,0 +1,2 @@
1
+ export default StyledSelectText;
2
+ declare const StyledSelectText: import("styled-components").StyledComponent<"span", any, {}, never>;
@@ -11,6 +11,11 @@ export interface OptionProps {
11
11
  borderColor?: string;
12
12
  /** MultiSelect only - fill Pill background with color */
13
13
  fill?: boolean;
14
+ /**
15
+ * @private
16
+ * @ignore
17
+ * OnClick callback */
18
+ onClick?: (ev: React.MouseEvent<HTMLLIElement>) => void;
14
19
  }
15
20
 
16
21
  declare function Option(
@@ -48,7 +48,7 @@ interface Locale {
48
48
  };
49
49
  pager: {
50
50
  show: () => string;
51
- records: (count: number | string, showNumber: boolean) => string;
51
+ records: (count: number | string, showNumber?: boolean) => string;
52
52
  first: () => string;
53
53
  last: () => string;
54
54
  next: () => string;
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ interface PagerNavigationLinkProps {
3
+ /** Type of Pagination link to be allowed for navigation */
4
+ type: "next" | "previous" | "first" | "last";
5
+ /** Current visible page */
6
+ currentPage: number;
7
+ /** Count of all the pages */
8
+ pageCount: number;
9
+ /** Pagination page size */
10
+ pageSize: number;
11
+ /** onClick Callback function */
12
+ onClick?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
13
+ /** onPagination Callback to process pagination */
14
+ onPagination?: (pageSize: number, currentPage: number, origin: string) => void;
15
+ }
16
+ declare const PagerNavigationLink: ({ type, currentPage, pageCount, pageSize, onClick, onPagination, }: PagerNavigationLinkProps) => JSX.Element;
17
+ export default PagerNavigationLink;
@@ -28,11 +28,11 @@ const PagerNavigationLink = ({
28
28
  onPagination
29
29
  }) => {
30
30
  const l = (0, _useLocale.default)();
31
- const linkRef = (0, _react.useRef)();
31
+ const linkRef = (0, _react.useRef)(null);
32
32
  const navLinkConfig = {
33
33
  first: {
34
34
  text: l.pager.first(),
35
- destination: "1"
35
+ destination: 1
36
36
  },
37
37
  last: {
38
38
  text: l.pager.last(),
@@ -64,40 +64,31 @@ const PagerNavigationLink = ({
64
64
  }
65
65
  }, [disabled]);
66
66
 
67
- const handleOnCLick = e => {
68
- onClick(e);
69
- onPagination(navLinkConfig[type].destination, pageSize, type);
67
+ const handleOnCLick = ev => {
68
+ onClick === null || onClick === void 0 ? void 0 : onClick(ev);
69
+ onPagination === null || onPagination === void 0 ? void 0 : onPagination(navLinkConfig[type].destination, pageSize, type);
70
70
  };
71
71
 
72
72
  const {
73
73
  text
74
74
  } = navLinkConfig[type];
75
- return /*#__PURE__*/_react.default.createElement(_pager.StyledPagerLinkStyles, {
75
+ return /*#__PURE__*/_react.default.createElement(_pager.StyledPagerLink, {
76
76
  "data-element": `pager-link-${type}`,
77
77
  disabled: disabled(),
78
- onClick: handleOnCLick,
78
+ onClick: // Type assertion due to the fact that StyledPagerLink
79
+ // will always return a button element
80
+ handleOnCLick,
79
81
  ref: linkRef
80
82
  }, text);
81
83
  };
82
84
 
83
85
  PagerNavigationLink.propTypes = {
84
- /** Type of Pagination link to be allowed for navigation */
85
- type: _propTypes.default.oneOf(["next", "previous", "first", "last"]).isRequired,
86
-
87
- /** Current visible page */
88
- currentPage: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
89
-
90
- /** Count of all the pages */
91
- pageCount: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
92
-
93
- /** Pagination page size */
94
- pageSize: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
95
-
96
- /** onClick Callback function */
97
- onClick: _propTypes.default.func,
98
-
99
- /** onPagination Callback to process pagination */
100
- onPagination: _propTypes.default.func
86
+ "currentPage": _propTypes.default.number.isRequired,
87
+ "onClick": _propTypes.default.func,
88
+ "onPagination": _propTypes.default.func,
89
+ "pageCount": _propTypes.default.number.isRequired,
90
+ "pageSize": _propTypes.default.number.isRequired,
91
+ "type": _propTypes.default.oneOf(["first", "last", "next", "previous"]).isRequired
101
92
  };
102
93
  var _default = PagerNavigationLink;
103
94
  exports.default = _default;
@@ -0,0 +1,28 @@
1
+ import React from "react";
2
+ export interface PagerNavigationProps {
3
+ /** Current visible page */
4
+ currentPage: number;
5
+ /** Pagination page size */
6
+ pageSize: number;
7
+ pageCount: number;
8
+ /** Sets the current page being shown */
9
+ setCurrentPage: (page: number) => void;
10
+ /** Callback function for next link */
11
+ onNext?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
12
+ /** Callback function for first link */
13
+ onFirst?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
14
+ /** Callback function for previous link */
15
+ onPrevious?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
16
+ /** Callback function for last link */
17
+ onLast?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
18
+ /** onPagination Callback triggered when a change is triggered */
19
+ onPagination: (pageSize: number, currentPage: number, origin: string) => void;
20
+ /** Should the `First` and `Last` navigation buttons be shown */
21
+ showFirstAndLastButtons?: boolean;
22
+ /** Should the `Next` and `Previous` navigation buttons be shown */
23
+ showPreviousAndNextButtons?: boolean;
24
+ /** Should the page count input be shown */
25
+ showPageCount?: boolean;
26
+ }
27
+ declare const PagerNavigation: ({ pageSize, currentPage, setCurrentPage, onNext, onPrevious, onFirst, onLast, onPagination, pageCount, showFirstAndLastButtons, showPreviousAndNextButtons, showPageCount, }: PagerNavigationProps) => JSX.Element;
28
+ export default PagerNavigation;
@@ -56,31 +56,33 @@ const PagerNavigation = ({
56
56
  };
57
57
 
58
58
  const handlePageInputChange = ev => {
59
+ const pageNumber = +ev.target.value;
60
+
59
61
  if (pageCount === 0) {
60
62
  setCurrentPage(0);
61
63
  onPagination(0, pageSize, "input");
62
- return "0";
64
+ return 0;
63
65
  }
64
66
 
65
- if (Number(ev.target.value) <= 0 || Number.isNaN(Number(ev.target.value))) {
67
+ if (pageNumber <= 0 || Number.isNaN(pageNumber)) {
66
68
  setCurrentPage(1);
67
69
  onPagination(1, pageSize, "input");
68
- return "1";
70
+ return 1;
69
71
  }
70
72
 
71
- if (Number(ev.target.value) > pageCount) {
73
+ if (pageNumber > pageCount) {
72
74
  setCurrentPage(pageCount);
73
75
  onPagination(pageCount, pageSize, "input");
74
76
  return pageCount;
75
77
  }
76
78
 
77
- setCurrentPage(Number(ev.target.value));
78
- onPagination(Number(ev.target.value), pageSize, "input");
79
- return ev.target.value;
79
+ setCurrentPage(pageNumber);
80
+ onPagination(pageNumber, pageSize, "input");
81
+ return pageNumber;
80
82
  };
81
83
 
82
84
  const handleCurrentPageChange = e => {
83
- setCurrentPage(e.target.value);
85
+ setCurrentPage(+e.target.value);
84
86
  };
85
87
 
86
88
  const renderButtonsBeforeCount = () => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, !hasTwoPages && showFirstAndLastButtons && /*#__PURE__*/_react.default.createElement(_pagerNavigationLink.default, _extends({
@@ -112,41 +114,18 @@ const PagerNavigation = ({
112
114
  };
113
115
 
114
116
  PagerNavigation.propTypes = {
115
- /** Current visible page */
116
- currentPage: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired,
117
-
118
- /** Pagination page size */
119
- pageSize: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
120
-
121
- /* Count of all of the pages */
122
- pageCount: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
123
-
124
- /** Sets the current page being shown */
125
- setCurrentPage: _propTypes.default.func,
126
-
127
- /** onFirst Callback triggered when first link is triggered */
128
- onFirst: _propTypes.default.func,
129
-
130
- /** onPrevious Callback triggered when previous link is triggered */
131
- onPrevious: _propTypes.default.func,
132
-
133
- /** onNext Callback triggered when next link is triggered */
134
- onNext: _propTypes.default.func,
135
-
136
- /** onLast Callback triggered when last link is triggered */
137
- onLast: _propTypes.default.func,
138
-
139
- /** onPagination Callback triggered when a change is triggered */
140
- onPagination: _propTypes.default.func,
141
-
142
- /** Should the `First` and `Last` navigation buttons be shown */
143
- showFirstAndLastButtons: _propTypes.default.bool,
144
-
145
- /** Should the `Next` and `Previous` navigation buttons be shown */
146
- showPreviousAndNextButtons: _propTypes.default.bool,
147
-
148
- /** Should the page count input be shown */
149
- showPageCount: _propTypes.default.bool
117
+ "currentPage": _propTypes.default.number.isRequired,
118
+ "onFirst": _propTypes.default.func,
119
+ "onLast": _propTypes.default.func,
120
+ "onNext": _propTypes.default.func,
121
+ "onPagination": _propTypes.default.func.isRequired,
122
+ "onPrevious": _propTypes.default.func,
123
+ "pageCount": _propTypes.default.number.isRequired,
124
+ "pageSize": _propTypes.default.number.isRequired,
125
+ "setCurrentPage": _propTypes.default.func.isRequired,
126
+ "showFirstAndLastButtons": _propTypes.default.bool,
127
+ "showPageCount": _propTypes.default.bool,
128
+ "showPreviousAndNextButtons": _propTypes.default.bool
150
129
  };
151
130
  var _default = PagerNavigation;
152
131
  exports.default = _default;
@@ -1,2 +1,2 @@
1
- export { default } from "./pager";
2
- export * from "./pager";
1
+ export { default } from "./pager.component";
2
+ export type { PagerProps } from "./pager.component";
@@ -0,0 +1,43 @@
1
+ import React from "react";
2
+ declare type PageSizeOption = {
3
+ id: string;
4
+ name: number;
5
+ };
6
+ export interface PagerProps {
7
+ /** Function called when pager changes (PageSize, Current Page) */
8
+ onPagination: (pageSize: number, currentPage: number, origin: string) => void;
9
+ /** Callback function for next link */
10
+ onNext?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
11
+ /** Callback function for first link */
12
+ onFirst?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
13
+ /** Callback function for previous link */
14
+ onPrevious?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
15
+ /** Callback function for last link */
16
+ onLast?: (ev: React.MouseEvent<HTMLButtonElement> | React.KeyboardEvent<HTMLButtonElement>) => void;
17
+ /** Current visible page */
18
+ currentPage?: number | string;
19
+ /** Total number of records */
20
+ totalRecords?: number | string;
21
+ /** Pagination page size */
22
+ pageSize?: number | string;
23
+ /** Should the page size selection dropdown be shown */
24
+ showPageSizeSelection?: boolean;
25
+ /** Set of page size options */
26
+ pageSizeSelectionOptions?: PageSizeOption[];
27
+ /** Should the label before the page size selection dropdown be shown */
28
+ showPageSizeLabelBefore?: boolean;
29
+ /** Should the label after the page size selection dropdown be shown */
30
+ showPageSizeLabelAfter?: boolean;
31
+ /** Should the total records label be shown */
32
+ showTotalRecords?: boolean;
33
+ /** Should the `First` and `Last` navigation button be shown */
34
+ showFirstAndLastButtons?: boolean;
35
+ /** Should the `Previous` and `Next` navigation button be shown */
36
+ showPreviousAndNextButtons?: boolean;
37
+ /** Should the page count input be shown */
38
+ showPageCount?: boolean;
39
+ /** What variant the Pager background should be */
40
+ variant?: "default" | "alternate";
41
+ }
42
+ export declare const Pager: ({ currentPage, pageSizeSelectionOptions, pageSize, showPageSizeSelection, totalRecords, onPagination, onNext, onFirst, onPrevious, onLast, showPageSizeLabelBefore, showPageSizeLabelAfter, showTotalRecords, showFirstAndLastButtons, showPreviousAndNextButtons, showPageCount, variant, ...rest }: PagerProps) => JSX.Element;
43
+ export default Pager;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = void 0;
6
+ exports.default = exports.Pager = void 0;
7
7
 
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
 
@@ -13,8 +13,6 @@ var _select = require("../select");
13
13
 
14
14
  var _pagerNavigation = _interopRequireDefault(require("./__internal__/pager-navigation.component"));
15
15
 
16
- var _option = _interopRequireDefault(require("../select/option/option.component"));
17
-
18
16
  var _useLocale = _interopRequireDefault(require("../../hooks/__internal__/useLocale"));
19
17
 
20
18
  var _guid = _interopRequireDefault(require("../../__internal__/utils/helpers/guid"));
@@ -64,31 +62,31 @@ const Pager = ({
64
62
  ...rest
65
63
  }) => {
66
64
  const l = (0, _useLocale.default)();
67
- const [page, setPage] = (0, _react.useState)(currentPage);
68
- const [currentPageSize, setCurrentPageSize] = (0, _react.useState)(pageSize);
69
- const [value, setValue] = (0, _react.useState)(pageSize);
65
+ const [page, setPage] = (0, _react.useState)(+currentPage);
66
+ const [currentPageSize, setCurrentPageSize] = (0, _react.useState)(+pageSize);
67
+ const [value, setValue] = (0, _react.useState)(+pageSize);
70
68
  const guid = (0, _react.useRef)((0, _guid.default)());
71
69
  const pageSizeSelectId = `Pager_size_selector_${guid.current}`;
72
70
  const getPageCount = (0, _react.useCallback)(() => {
73
- if (Number(totalRecords) < 0 || Number.isNaN(Number(totalRecords))) {
71
+ if (+totalRecords < 0 || Number.isNaN(+totalRecords)) {
74
72
  return 1;
75
73
  }
76
74
 
77
- return Math.ceil(totalRecords / currentPageSize);
75
+ return Math.ceil(+totalRecords / currentPageSize);
78
76
  }, [totalRecords, currentPageSize]);
79
77
  const [pageCount, setPageCount] = (0, _react.useState)(getPageCount());
80
78
  (0, _react.useEffect)(() => {
81
- setCurrentPageSize(Number(pageSize));
82
- setValue(pageSize);
79
+ setCurrentPageSize(+pageSize);
80
+ setValue(+pageSize);
83
81
  }, [pageSize]);
84
82
  (0, _react.useEffect)(() => {
85
83
  const maxPage = getPageCount();
86
84
  setPageCount(maxPage);
87
85
 
88
- if (Number(currentPage) > maxPage) {
86
+ if (+currentPage > maxPage) {
89
87
  setPage(maxPage);
90
88
  } else {
91
- setPage(Number(currentPage));
89
+ setPage(+currentPage);
92
90
  }
93
91
  }, [currentPageSize, pageCount, currentPage, totalRecords, getPageCount]);
94
92
  const handleOnFirst = (0, _react.useCallback)(e => {
@@ -123,20 +121,20 @@ const Pager = ({
123
121
  }, [page, onPrevious]);
124
122
  const handleOnPagination = (0, _react.useCallback)(e => {
125
123
  setValue(e.target.value);
126
- setCurrentPageSize(Number(e.target.value));
127
- onPagination(1, Number(e.target.value), "page-select");
124
+ setCurrentPageSize(+e.target.value);
125
+ onPagination(1, +e.target.value, "page-select");
128
126
  }, [onPagination]);
129
127
  const handleKeyDown = (0, _react.useCallback)(e => _events.default.isEnterKey(e) && handleOnPagination(e), [handleOnPagination]);
130
128
 
131
129
  const sizeSelector = () => {
132
130
  return /*#__PURE__*/_react.default.createElement(_pager.StyledSelectContainer, null, /*#__PURE__*/_react.default.createElement(_select.Select, {
133
131
  value: String(value),
134
- onChange: ev => setValue(ev.target.value),
132
+ onChange: ev => setValue(+ev.target.value),
135
133
  onBlur: () => setValue(currentPageSize),
136
134
  onKeyDown: handleKeyDown,
137
135
  "data-element": "page-select",
138
136
  id: pageSizeSelectId
139
- }, pageSizeSelectionOptions.map(sizeOption => /*#__PURE__*/_react.default.createElement(_option.default, {
137
+ }, pageSizeSelectionOptions.map(sizeOption => /*#__PURE__*/_react.default.createElement(_select.Option, {
140
138
  key: sizeOption.id,
141
139
  text: sizeOption.id,
142
140
  value: String(sizeOption.name),
@@ -171,60 +169,28 @@ const Pager = ({
171
169
  }), /*#__PURE__*/_react.default.createElement(_pager.StyledPagerSummary, null, renderTotalRecords()));
172
170
  };
173
171
 
172
+ exports.Pager = Pager;
174
173
  Pager.propTypes = {
175
- /** Function called when pager changes (PageSize, Current Page) */
176
- onPagination: _propTypes.default.func.isRequired,
177
-
178
- /** Callback function for next link */
179
- onNext: _propTypes.default.func,
180
-
181
- /** Callback function for first link */
182
- onFirst: _propTypes.default.func,
183
-
184
- /** Callback function for previous link */
185
- onPrevious: _propTypes.default.func,
186
-
187
- /** Callback function for last link */
188
- onLast: _propTypes.default.func,
189
-
190
- /** Current visible page */
191
- currentPage: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
192
-
193
- /** Total number of records */
194
- totalRecords: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
195
-
196
- /** Pagination page size */
197
- pageSize: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
198
-
199
- /** Set of page size options */
200
- pageSizeSelectionOptions: _propTypes.default.arrayOf(_propTypes.default.shape({
201
- id: _propTypes.default.string,
202
- name: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number])
174
+ "currentPage": _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
175
+ "onFirst": _propTypes.default.func,
176
+ "onLast": _propTypes.default.func,
177
+ "onNext": _propTypes.default.func,
178
+ "onPagination": _propTypes.default.func.isRequired,
179
+ "onPrevious": _propTypes.default.func,
180
+ "pageSize": _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
181
+ "pageSizeSelectionOptions": _propTypes.default.arrayOf(_propTypes.default.shape({
182
+ "id": _propTypes.default.string.isRequired,
183
+ "name": _propTypes.default.number.isRequired
203
184
  })),
204
-
205
- /** Should the page size selection dropdown be shown */
206
- showPageSizeSelection: _propTypes.default.bool,
207
-
208
- /** Should the label before the page size selection dropdown be shown */
209
- showPageSizeLabelBefore: _propTypes.default.bool,
210
-
211
- /** Should the label after the page size selection dropdown be shown */
212
- showPageSizeLabelAfter: _propTypes.default.bool,
213
-
214
- /** Should the total records label be shown */
215
- showTotalRecords: _propTypes.default.bool,
216
-
217
- /** Should the `First` and `Last` navigation button be shown */
218
- showFirstAndLastButtons: _propTypes.default.bool,
219
-
220
- /** Should the `Previous` and `Next` navigation button be shown */
221
- showPreviousAndNextButtons: _propTypes.default.bool,
222
-
223
- /** Should the page count input be shown */
224
- showPageCount: _propTypes.default.bool,
225
-
226
- /** What variant the Pager background should be */
227
- variant: _propTypes.default.oneOf(["default", "alternate"])
185
+ "showFirstAndLastButtons": _propTypes.default.bool,
186
+ "showPageCount": _propTypes.default.bool,
187
+ "showPageSizeLabelAfter": _propTypes.default.bool,
188
+ "showPageSizeLabelBefore": _propTypes.default.bool,
189
+ "showPageSizeSelection": _propTypes.default.bool,
190
+ "showPreviousAndNextButtons": _propTypes.default.bool,
191
+ "showTotalRecords": _propTypes.default.bool,
192
+ "totalRecords": _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
193
+ "variant": _propTypes.default.oneOf(["alternate", "default"])
228
194
  };
229
195
  var _default = Pager;
230
196
  exports.default = _default;
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import { PagerProps } from ".";
3
+ declare const StyledSelectContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
4
+ declare const StyledPagerContainer: import("styled-components").StyledComponent<"div", any, Pick<PagerProps, "variant">, never>;
5
+ declare const StyledPagerSizeOptions: import("styled-components").StyledComponent<"div", any, {}, never>;
6
+ declare const StyledPagerSizeOptionsInner: import("styled-components").StyledComponent<"div", any, {}, never>;
7
+ declare const StyledPagerNavigation: import("styled-components").StyledComponent<"div", any, {}, never>;
8
+ declare const StyledPagerNavInner: import("styled-components").StyledComponent<"div", any, {}, never>;
9
+ declare const StyledPagerLink: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<import("../link").LinkProps & import("react").RefAttributes<HTMLButtonElement | HTMLLinkElement>>, any, {}, never>;
10
+ declare const StyledPagerNoSelect: import("styled-components").StyledComponent<"div", any, {}, never>;
11
+ declare const StyledPagerSummary: import("styled-components").StyledComponent<"div", any, {}, never>;
12
+ export { StyledPagerContainer, StyledPagerSizeOptions, StyledPagerSizeOptionsInner, StyledPagerNavigation, StyledPagerNavInner, StyledPagerLink, StyledPagerNoSelect, StyledPagerSummary, StyledSelectContainer, };
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.StyledSelectContainer = exports.StyledPagerSummary = exports.StyledPagerNoSelect = exports.StyledPagerLinkStyles = exports.StyledPagerNavInner = exports.StyledPagerNavigation = exports.StyledPagerSizeOptionsInner = exports.StyledPagerSizeOptions = exports.StyledPagerContainer = void 0;
6
+ exports.StyledSelectContainer = exports.StyledPagerSummary = exports.StyledPagerNoSelect = exports.StyledPagerLink = exports.StyledPagerNavInner = exports.StyledPagerNavigation = exports.StyledPagerSizeOptionsInner = exports.StyledPagerSizeOptions = exports.StyledPagerContainer = void 0;
7
7
 
8
8
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
9
9
 
@@ -121,12 +121,12 @@ const StyledPagerNavInner = _styledComponents.default.div`
121
121
  }
122
122
  `;
123
123
  exports.StyledPagerNavInner = StyledPagerNavInner;
124
- const StyledPagerLinkStyles = (0, _styledComponents.default)(_link.default)`
124
+ const StyledPagerLink = (0, _styledComponents.default)(_link.default)`
125
125
  padding: 0 10px;
126
126
  margin-left: 7px;
127
127
  margin-right: 7px;
128
128
  `;
129
- exports.StyledPagerLinkStyles = StyledPagerLinkStyles;
129
+ exports.StyledPagerLink = StyledPagerLink;
130
130
  const StyledPagerNoSelect = _styledComponents.default.div`
131
131
  user-select: none;
132
132
  white-space: nowrap;
@@ -0,0 +1,2 @@
1
+ export default StyledSelectText;
2
+ declare const StyledSelectText: import("styled-components").StyledComponent<"span", any, {}, never>;
@@ -11,6 +11,11 @@ export interface OptionProps {
11
11
  borderColor?: string;
12
12
  /** MultiSelect only - fill Pill background with color */
13
13
  fill?: boolean;
14
+ /**
15
+ * @private
16
+ * @ignore
17
+ * OnClick callback */
18
+ onClick?: (ev: React.MouseEvent<HTMLLIElement>) => void;
14
19
  }
15
20
 
16
21
  declare function Option(
@@ -48,7 +48,7 @@ interface Locale {
48
48
  };
49
49
  pager: {
50
50
  show: () => string;
51
- records: (count: number | string, showNumber: boolean) => string;
51
+ records: (count: number | string, showNumber?: boolean) => string;
52
52
  first: () => string;
53
53
  last: () => string;
54
54
  next: () => string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "carbon-react",
3
- "version": "111.22.4",
3
+ "version": "112.0.0",
4
4
  "description": "A library of reusable React components for easily building user interfaces.",
5
5
  "files": [
6
6
  "lib",
@@ -1,42 +0,0 @@
1
- import * as React from "react";
2
-
3
- export interface PagerPropTypes {
4
- /** Function called when pager changes (PageSize, Current Page) */
5
- onPagination: (pageSize: number, currentPage: number, origin: string) => void;
6
- /** Callback function for next link */
7
- onNext?: (ev: React.MouseEvent<HTMLElement>) => void;
8
- /** Callback function for first link */
9
- onFirst?: (ev: React.MouseEvent<HTMLElement>) => void;
10
- /** Callback function for previous link */
11
- onPrevious?: (ev: React.MouseEvent<HTMLElement>) => void;
12
- /** Callback function for last link */
13
- onLast?: (ev: React.MouseEvent<HTMLElement>) => void;
14
- /** Current visible page */
15
- currentPage?: number | string;
16
- /** Total number of records */
17
- totalRecords?: number | string;
18
- /** Pagination page size */
19
- pageSize?: number | string;
20
- /** Should the page size selection dropdown be shown */
21
- showPageSizeSelection?: boolean;
22
- /** Set of page size options */
23
- pageSizeSelectionOptions?: Record<string, unknown>[];
24
- /** Should the label before the page size selection dropdown be shown */
25
- showPageSizeLabelBefore?: boolean;
26
- /** Should the label after the page size selection dropdown be shown */
27
- showPageSizeLabelAfter?: boolean;
28
- /** Should the total records label be shown */
29
- showTotalRecords?: boolean;
30
- /** Should the `First` and `Last` navigation button be shown */
31
- showFirstAndLastButtons?: boolean;
32
- /** Should the `Previous` and `Next` navigation button be shown */
33
- showPreviousAndNextButtons?: boolean;
34
- /** Should the page count input be shown */
35
- showPageCount?: boolean;
36
- /** What variant the Pager background should be */
37
- variant?: "default" | "alternate";
38
- }
39
-
40
- declare function Pager(props: PagerPropTypes): JSX.Element;
41
-
42
- export default Pager;
@@ -1,42 +0,0 @@
1
- import * as React from "react";
2
-
3
- export interface PagerPropTypes {
4
- /** Function called when pager changes (PageSize, Current Page) */
5
- onPagination: (pageSize: number, currentPage: number, origin: string) => void;
6
- /** Callback function for next link */
7
- onNext?: (ev: React.MouseEvent<HTMLElement>) => void;
8
- /** Callback function for first link */
9
- onFirst?: (ev: React.MouseEvent<HTMLElement>) => void;
10
- /** Callback function for previous link */
11
- onPrevious?: (ev: React.MouseEvent<HTMLElement>) => void;
12
- /** Callback function for last link */
13
- onLast?: (ev: React.MouseEvent<HTMLElement>) => void;
14
- /** Current visible page */
15
- currentPage?: number | string;
16
- /** Total number of records */
17
- totalRecords?: number | string;
18
- /** Pagination page size */
19
- pageSize?: number | string;
20
- /** Should the page size selection dropdown be shown */
21
- showPageSizeSelection?: boolean;
22
- /** Set of page size options */
23
- pageSizeSelectionOptions?: Record<string, unknown>[];
24
- /** Should the label before the page size selection dropdown be shown */
25
- showPageSizeLabelBefore?: boolean;
26
- /** Should the label after the page size selection dropdown be shown */
27
- showPageSizeLabelAfter?: boolean;
28
- /** Should the total records label be shown */
29
- showTotalRecords?: boolean;
30
- /** Should the `First` and `Last` navigation button be shown */
31
- showFirstAndLastButtons?: boolean;
32
- /** Should the `Previous` and `Next` navigation button be shown */
33
- showPreviousAndNextButtons?: boolean;
34
- /** Should the page count input be shown */
35
- showPageCount?: boolean;
36
- /** What variant the Pager background should be */
37
- variant?: "default" | "alternate";
38
- }
39
-
40
- declare function Pager(props: PagerPropTypes): JSX.Element;
41
-
42
- export default Pager;