@progress/kendo-react-data-tools 5.10.0-dev.202301051045 → 5.10.0-dev.202301091032
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.
- package/dist/cdn/js/kendo-react-data-tools.js +1 -1
- package/dist/es/package-metadata.js +1 -1
- package/dist/es/pager/Pager.d.ts +14 -0
- package/dist/es/pager/Pager.js +25 -19
- package/dist/es/pager/PagerInput.d.ts +4 -0
- package/dist/es/pager/PagerInput.js +41 -8
- package/dist/es/pager/PagerNumericButtons.d.ts +1 -2
- package/dist/es/pager/PagerNumericButtons.js +10 -28
- package/dist/es/pager/PagerPageSizes.d.ts +2 -1
- package/dist/es/pager/PagerPageSizes.js +1 -1
- package/dist/npm/package-metadata.js +1 -1
- package/dist/npm/pager/Pager.d.ts +14 -0
- package/dist/npm/pager/Pager.js +24 -18
- package/dist/npm/pager/PagerInput.d.ts +4 -0
- package/dist/npm/pager/PagerInput.js +40 -7
- package/dist/npm/pager/PagerNumericButtons.d.ts +1 -2
- package/dist/npm/pager/PagerNumericButtons.js +9 -27
- package/dist/npm/pager/PagerPageSizes.d.ts +2 -1
- package/dist/npm/pager/PagerPageSizes.js +1 -1
- package/dist/systemjs/kendo-react-data-tools.js +1 -1
- package/package.json +10 -10
|
@@ -5,7 +5,7 @@ export var packageMetadata = {
|
|
|
5
5
|
name: '@progress/kendo-react-data-tools',
|
|
6
6
|
productName: 'KendoReact',
|
|
7
7
|
productCodes: ['KENDOUIREACT', 'KENDOUICOMPLETE'],
|
|
8
|
-
publishDate:
|
|
8
|
+
publishDate: 1673259211,
|
|
9
9
|
version: '',
|
|
10
10
|
licensingDocsUrl: 'https://www.telerik.com/kendo-react-ui/my-license/?utm_medium=product&utm_source=kendoreact&utm_campaign=kendo-ui-react-purchase-license-keys-warning'
|
|
11
11
|
};
|
package/dist/es/pager/Pager.d.ts
CHANGED
|
@@ -72,6 +72,18 @@ export interface PagerProps {
|
|
|
72
72
|
* Defines if the pager will be responsive. Defaults to `true`.
|
|
73
73
|
*/
|
|
74
74
|
responsive?: boolean;
|
|
75
|
+
/**
|
|
76
|
+
* Configures the `size` of the Pager.
|
|
77
|
+
*
|
|
78
|
+
* The available options are:
|
|
79
|
+
* - small
|
|
80
|
+
* - medium
|
|
81
|
+
* - large
|
|
82
|
+
* - null—Does not set a size `className`.
|
|
83
|
+
*
|
|
84
|
+
* @default `medium`
|
|
85
|
+
*/
|
|
86
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
75
87
|
/**
|
|
76
88
|
* Fires when the page of the Pager is changed. You have to handle the event yourself and page the data.
|
|
77
89
|
*/
|
|
@@ -101,6 +113,7 @@ export declare class Pager extends React.Component<PagerProps> {
|
|
|
101
113
|
previousNext: PropTypes.Requireable<boolean>;
|
|
102
114
|
onPageChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
103
115
|
messagesMap: PropTypes.Requireable<(...args: any[]) => any>;
|
|
116
|
+
size: PropTypes.Requireable<string | null>;
|
|
104
117
|
};
|
|
105
118
|
/**
|
|
106
119
|
* @hidden
|
|
@@ -109,6 +122,7 @@ export declare class Pager extends React.Component<PagerProps> {
|
|
|
109
122
|
buttonCount: number;
|
|
110
123
|
info: boolean;
|
|
111
124
|
type: string;
|
|
125
|
+
size: string;
|
|
112
126
|
};
|
|
113
127
|
private _element;
|
|
114
128
|
/**
|
package/dist/es/pager/Pager.js
CHANGED
|
@@ -29,9 +29,10 @@ import * as PropTypes from 'prop-types';
|
|
|
29
29
|
import { PagerNumericButtons } from './PagerNumericButtons';
|
|
30
30
|
import { PagerInput } from './PagerInput';
|
|
31
31
|
import { PagerPageSizes } from './PagerPageSizes';
|
|
32
|
+
import { Button } from '@progress/kendo-react-buttons';
|
|
32
33
|
import { messages, pagerFirstPage, pagerLastPage, pagerNextPage, pagerPreviousPage, pagerInfo, pagerAriaKeyshortcuts, pagerAriaLabel } from '../messages';
|
|
33
34
|
import { registerForIntl, registerForLocalization, provideLocalizationService, provideIntlService } from '@progress/kendo-react-intl';
|
|
34
|
-
import { classNames,
|
|
35
|
+
import { classNames, kendoThemeMaps } from '@progress/kendo-react-common';
|
|
35
36
|
import { validatePackage } from '@progress/kendo-react-common';
|
|
36
37
|
import { packageMetadata } from '../package-metadata';
|
|
37
38
|
/**
|
|
@@ -113,13 +114,14 @@ var Pager = /** @class */ (function (_super) {
|
|
|
113
114
|
* @hidden
|
|
114
115
|
*/
|
|
115
116
|
Pager.prototype.render = function () {
|
|
117
|
+
var _a;
|
|
116
118
|
var _this = this;
|
|
117
|
-
var
|
|
119
|
+
var _b = this.props, skip = _b.skip, take = _b.take, total = _b.total, pageSizes = _b.pageSizes, size = _b.size, messagesMap = _b.messagesMap;
|
|
118
120
|
var localizationService = provideLocalizationService(this);
|
|
119
121
|
var intlService = provideIntlService(this);
|
|
120
122
|
var currentPage = Math.floor(skip / take) + 1;
|
|
121
123
|
var changer = this.props.type === 'numeric' ?
|
|
122
|
-
(React.createElement(PagerNumericButtons, { buttonCount: this.props.buttonCount || 0, totalPages: this.totalPages, currentPage: currentPage, pageChange: this.changePage, messagesMap: this.props.messagesMap })) : (React.createElement(PagerInput, { currentPage: currentPage, totalPages: this.totalPages, pageChange: this.changePage, messagesMap: messagesMap }));
|
|
124
|
+
(React.createElement(PagerNumericButtons, { buttonCount: this.props.buttonCount || 0, totalPages: this.totalPages, currentPage: currentPage, pageChange: this.changePage, messagesMap: this.props.messagesMap, size: this.props.size })) : (React.createElement(PagerInput, { buttonCount: this.props.buttonCount || 0, currentPage: currentPage, totalPages: this.totalPages, pageChange: this.changePage, messagesMap: messagesMap, size: this.props.size }));
|
|
123
125
|
var firstPageMessage = messagesMap ? messagesMap(pagerFirstPage) :
|
|
124
126
|
({ messageKey: pagerFirstPage, defaultMessage: messages[pagerFirstPage] });
|
|
125
127
|
var previousPageMessage = messagesMap ? messagesMap(pagerPreviousPage) :
|
|
@@ -136,34 +138,36 @@ var Pager = /** @class */ (function (_super) {
|
|
|
136
138
|
({ messageKey: pagerAriaLabel, defaultMessage: messages[pagerAriaLabel] });
|
|
137
139
|
var first, prev, next, last;
|
|
138
140
|
if (this.props.previousNext) {
|
|
139
|
-
first = this.renderButton(1, 'k-
|
|
140
|
-
prev = this.renderButton(currentPage - 1, 'k-
|
|
141
|
-
next = this.renderButton(currentPage + 1, 'k-
|
|
142
|
-
last = this.renderButton(this.totalPages, 'k-
|
|
141
|
+
first = this.renderButton(1, 'k-pager-nav k-pager-first' + (currentPage === 1 ? ' k-disabled' : ''), localizationService.toLanguageString(firstPageMessage.messageKey, firstPageMessage.defaultMessage), 'caret-alt-to-left', (currentPage === 1 ? true : undefined));
|
|
142
|
+
prev = this.renderButton(currentPage - 1, 'k-pager-nav' + (currentPage === 1 ? ' k-disabled' : ''), localizationService.toLanguageString(previousPageMessage.messageKey, previousPageMessage.defaultMessage), 'caret-alt-left', (currentPage === 1 ? true : undefined));
|
|
143
|
+
next = this.renderButton(currentPage + 1, 'k-pager-nav' + (currentPage >= this.totalPages ? ' k-disabled' : ''), localizationService.toLanguageString(nextPageMessage.messageKey, nextPageMessage.defaultMessage), 'caret-alt-right', (currentPage >= this.totalPages ? true : undefined));
|
|
144
|
+
last = this.renderButton(this.totalPages, 'k-pager-nav k-pager-last' + (currentPage >= this.totalPages ? ' k-disabled' : ''), localizationService.toLanguageString(lastPageMessage.messageKey, lastPageMessage.defaultMessage), 'caret-alt-to-right', (currentPage >= this.totalPages ? true : undefined));
|
|
143
145
|
}
|
|
144
|
-
var pagerPageSizes = pageSizes && (React.createElement(PagerPageSizes, { pageChange: this.onPageChange, pageSize: take, pageSizes: pageSizes, messagesMap: messagesMap }));
|
|
146
|
+
var pagerPageSizes = pageSizes && (React.createElement(PagerPageSizes, { pageChange: this.onPageChange, pageSize: take, pageSizes: pageSizes, messagesMap: messagesMap, size: this.props.size }));
|
|
145
147
|
var info = this.props.info && (React.createElement("div", { className: "k-pager-info k-label" }, intlService
|
|
146
148
|
.format(localizationService.toLanguageString(infoMessage.messageKey, infoMessage.defaultMessage), [
|
|
147
149
|
Math.min(skip + 1, total),
|
|
148
150
|
Math.min(skip + take, total),
|
|
149
151
|
total
|
|
150
152
|
])));
|
|
151
|
-
return (React.createElement("div", { className: classNames('k-pager
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
153
|
+
return (React.createElement("div", { className: classNames('k-pager', (_a = {},
|
|
154
|
+
_a["k-pager-".concat(kendoThemeMaps.sizeMap[size] || size)] = size,
|
|
155
|
+
_a), this.props.className), style: this.props.style, role: "application", "aria-roledescription": "pager", "aria-keyshortcuts": localizationService.toLanguageString(ariaKeyshortcutsMessage.messageKey, ariaKeyshortcutsMessage.defaultMessage), "aria-label": localizationService.toLanguageString(ariaLabelMessage.messageKey, ariaLabelMessage.defaultMessage), ref: function (element) { return _this._element = element; } },
|
|
156
|
+
React.createElement("div", { className: classNames('k-pager-numbers-wrap', this.props.className) },
|
|
157
|
+
first,
|
|
158
|
+
prev,
|
|
159
|
+
changer,
|
|
160
|
+
next,
|
|
161
|
+
last),
|
|
157
162
|
pagerPageSizes,
|
|
158
163
|
info));
|
|
159
164
|
};
|
|
160
165
|
Pager.prototype.renderButton = function (page, className, title, icon, isDisabled) {
|
|
161
166
|
var _this = this;
|
|
162
|
-
return (React.createElement("
|
|
167
|
+
return (React.createElement(Button, { fillMode: 'flat', themeColor: 'base', size: this.props.size, rounded: null, className: className, icon: icon, title: title, role: "button", "aria-disabled": isDisabled, onClick: function (e) {
|
|
163
168
|
e.preventDefault();
|
|
164
169
|
_this.changePage(page, e);
|
|
165
|
-
}
|
|
166
|
-
React.createElement(Icon, { name: icon })));
|
|
170
|
+
} }));
|
|
167
171
|
};
|
|
168
172
|
Object.defineProperty(Pager.prototype, "totalPages", {
|
|
169
173
|
get: function () {
|
|
@@ -187,7 +191,8 @@ var Pager = /** @class */ (function (_super) {
|
|
|
187
191
|
pageSizes: PropTypes.arrayOf(PropTypes.number),
|
|
188
192
|
previousNext: PropTypes.bool,
|
|
189
193
|
onPageChange: PropTypes.func,
|
|
190
|
-
messagesMap: PropTypes.func
|
|
194
|
+
messagesMap: PropTypes.func,
|
|
195
|
+
size: PropTypes.oneOf([null, 'small', 'medium', 'large'])
|
|
191
196
|
};
|
|
192
197
|
/**
|
|
193
198
|
* @hidden
|
|
@@ -195,7 +200,8 @@ var Pager = /** @class */ (function (_super) {
|
|
|
195
200
|
Pager.defaultProps = {
|
|
196
201
|
buttonCount: 10,
|
|
197
202
|
info: true,
|
|
198
|
-
type: 'numeric'
|
|
203
|
+
type: 'numeric',
|
|
204
|
+
size: 'medium'
|
|
199
205
|
};
|
|
200
206
|
return Pager;
|
|
201
207
|
}(React.Component));
|
|
@@ -3,8 +3,10 @@ import * as React from 'react';
|
|
|
3
3
|
* @hidden
|
|
4
4
|
*/
|
|
5
5
|
export interface PagerInputProps {
|
|
6
|
+
buttonCount: number;
|
|
6
7
|
totalPages: number;
|
|
7
8
|
currentPage: number;
|
|
9
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
8
10
|
pageChange: (page: number, e: React.SyntheticEvent<any>) => any;
|
|
9
11
|
messagesMap?: (messageKey: string) => ({
|
|
10
12
|
messageKey: string;
|
|
@@ -19,4 +21,6 @@ export declare class PagerInput extends React.Component<PagerInputProps> {
|
|
|
19
21
|
onChange: (e: any) => void;
|
|
20
22
|
value: () => string;
|
|
21
23
|
render(): JSX.Element;
|
|
24
|
+
private get end();
|
|
25
|
+
private get start();
|
|
22
26
|
}
|
|
@@ -14,8 +14,9 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
14
14
|
};
|
|
15
15
|
})();
|
|
16
16
|
import * as React from 'react';
|
|
17
|
+
import { classNames, kendoThemeMaps } from '@progress/kendo-react-common';
|
|
17
18
|
import { registerForLocalization, provideLocalizationService, provideIntlService } from '@progress/kendo-react-intl';
|
|
18
|
-
import { messages, pagerOf, pagerPage, pagerTotalPages } from './../messages';
|
|
19
|
+
import { messages, pagerOf, pagerPage, pagerTotalPages, pagerMobileSelect } from './../messages';
|
|
19
20
|
/**
|
|
20
21
|
* @hidden
|
|
21
22
|
*/
|
|
@@ -39,6 +40,7 @@ var PagerInput = /** @class */ (function (_super) {
|
|
|
39
40
|
return _this;
|
|
40
41
|
}
|
|
41
42
|
PagerInput.prototype.render = function () {
|
|
43
|
+
var _a;
|
|
42
44
|
var _this = this;
|
|
43
45
|
var intlService = provideIntlService(this);
|
|
44
46
|
var localizationService = provideLocalizationService(this);
|
|
@@ -48,14 +50,45 @@ var PagerInput = /** @class */ (function (_super) {
|
|
|
48
50
|
({ messageKey: pagerOf, defaultMessage: messages[pagerOf] });
|
|
49
51
|
var totalPagesMessage = this.props.messagesMap ? this.props.messagesMap(pagerTotalPages) :
|
|
50
52
|
({ messageKey: pagerTotalPages, defaultMessage: messages[pagerTotalPages] });
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
.
|
|
56
|
-
|
|
57
|
-
|
|
53
|
+
var mobileSelectMessage = this.props.messagesMap ? this.props.messagesMap(pagerMobileSelect) :
|
|
54
|
+
({ messageKey: pagerMobileSelect, defaultMessage: messages[pagerMobileSelect] });
|
|
55
|
+
var buttons = [];
|
|
56
|
+
for (var idx = this.start; idx <= this.end; idx++) {
|
|
57
|
+
buttons.push(idx);
|
|
58
|
+
}
|
|
59
|
+
var options = buttons.map(function (page) { return (React.createElement("option", { key: page }, page)); });
|
|
60
|
+
return (React.createElement(React.Fragment, null,
|
|
61
|
+
React.createElement("select", { className: classNames('k-picker k-dropdown-list k-dropdown k-rounded-md', (_a = {},
|
|
62
|
+
_a["k-picker-".concat(kendoThemeMaps.sizeMap[this.props.size] || this.props.size)] = this.props.size,
|
|
63
|
+
_a)), "aria-label": localizationService.toLanguageString(mobileSelectMessage.messageKey, mobileSelectMessage.defaultMessage), value: this.props.currentPage, onChange: this.onChange }, options),
|
|
64
|
+
React.createElement("span", { className: "k-pager-input k-label" },
|
|
65
|
+
localizationService.toLanguageString(pageMessage.messageKey, pageMessage.defaultMessage),
|
|
66
|
+
React.createElement("span", { className: 'k-textbox k-input k-input-md k-rounded-md k-input-solid' },
|
|
67
|
+
React.createElement("input", { className: "k-input-inner", value: this.value(), onBlur: function () { return _this.forceUpdate(); }, onChange: this.onChange })), "".concat(localizationService.toLanguageString(ofMessage.messageKey, ofMessage.defaultMessage), " ").concat(intlService
|
|
68
|
+
.format(localizationService.toLanguageString(totalPagesMessage.messageKey, totalPagesMessage.defaultMessage), [
|
|
69
|
+
this.props.totalPages
|
|
70
|
+
])))));
|
|
58
71
|
};
|
|
72
|
+
Object.defineProperty(PagerInput.prototype, "end", {
|
|
73
|
+
get: function () {
|
|
74
|
+
return Math.min((this.start + this.props.buttonCount) - 1, this.props.totalPages);
|
|
75
|
+
},
|
|
76
|
+
enumerable: false,
|
|
77
|
+
configurable: true
|
|
78
|
+
});
|
|
79
|
+
Object.defineProperty(PagerInput.prototype, "start", {
|
|
80
|
+
get: function () {
|
|
81
|
+
var page = this.props.currentPage;
|
|
82
|
+
var buttonCount = this.props.buttonCount;
|
|
83
|
+
if (page > buttonCount) {
|
|
84
|
+
var reminder = (page % buttonCount);
|
|
85
|
+
return (reminder === 0) ? (page - buttonCount) + 1 : (page - reminder) + 1;
|
|
86
|
+
}
|
|
87
|
+
return 1;
|
|
88
|
+
},
|
|
89
|
+
enumerable: false,
|
|
90
|
+
configurable: true
|
|
91
|
+
});
|
|
59
92
|
return PagerInput;
|
|
60
93
|
}(React.Component));
|
|
61
94
|
export { PagerInput };
|
|
@@ -6,6 +6,7 @@ export interface PagerNumericButtonsProps {
|
|
|
6
6
|
buttonCount: number;
|
|
7
7
|
totalPages: number;
|
|
8
8
|
currentPage: number;
|
|
9
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
9
10
|
pageChange: (page: number, e: React.SyntheticEvent<any>) => any;
|
|
10
11
|
messagesMap?: (messageKey: string) => ({
|
|
11
12
|
messageKey: string;
|
|
@@ -17,8 +18,6 @@ export interface PagerNumericButtonsProps {
|
|
|
17
18
|
*/
|
|
18
19
|
export declare class PagerNumericButtons extends React.Component<PagerNumericButtonsProps> {
|
|
19
20
|
render(): JSX.Element;
|
|
20
|
-
private renderDots;
|
|
21
|
-
private renderOptionDots;
|
|
22
21
|
private handlePageChange;
|
|
23
22
|
private handleSelectPageChange;
|
|
24
23
|
private get end();
|
|
@@ -14,10 +14,10 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
14
14
|
};
|
|
15
15
|
})();
|
|
16
16
|
import * as React from 'react';
|
|
17
|
-
import { classNames } from '@progress/kendo-react-common';
|
|
17
|
+
import { classNames, kendoThemeMaps } from '@progress/kendo-react-common';
|
|
18
|
+
import { Button } from '@progress/kendo-react-buttons';
|
|
18
19
|
import { messages, pagerMobileSelect, pagerPageNumberLabel } from '../messages';
|
|
19
20
|
import { provideLocalizationService } from '@progress/kendo-react-intl';
|
|
20
|
-
var dots = '...';
|
|
21
21
|
/**
|
|
22
22
|
* @hidden
|
|
23
23
|
*/
|
|
@@ -36,12 +36,9 @@ var PagerNumericButtons = /** @class */ (function (_super) {
|
|
|
36
36
|
return _this;
|
|
37
37
|
}
|
|
38
38
|
PagerNumericButtons.prototype.render = function () {
|
|
39
|
+
var _a;
|
|
39
40
|
var _this = this;
|
|
40
41
|
var localizationService = provideLocalizationService(this);
|
|
41
|
-
var prevDots = this.start > 1 && this.renderDots(this.start - 1);
|
|
42
|
-
var postDots = this.end < this.props.totalPages && this.renderDots(this.end + 1);
|
|
43
|
-
var prevOptionDots = this.start > 1 && this.renderOptionDots(this.start - 1);
|
|
44
|
-
var postOptionDots = this.end < this.props.totalPages && this.renderOptionDots(this.end + 1);
|
|
45
42
|
var mobileSelectMessage = this.props.messagesMap ? this.props.messagesMap(pagerMobileSelect) :
|
|
46
43
|
({ messageKey: pagerMobileSelect, defaultMessage: messages[pagerMobileSelect] });
|
|
47
44
|
var pageNumberLabelMessage = this.props.messagesMap ? this.props.messagesMap(pagerPageNumberLabel) :
|
|
@@ -50,28 +47,13 @@ var PagerNumericButtons = /** @class */ (function (_super) {
|
|
|
50
47
|
for (var idx = this.start; idx <= this.end; idx++) {
|
|
51
48
|
buttons.push(idx);
|
|
52
49
|
}
|
|
53
|
-
var numerics = buttons.map(function (page) { return (React.createElement(
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
React.createElement("
|
|
60
|
-
prevOptionDots,
|
|
61
|
-
options,
|
|
62
|
-
postOptionDots),
|
|
63
|
-
React.createElement("ul", { className: "k-pager-numbers" },
|
|
64
|
-
prevDots,
|
|
65
|
-
numerics,
|
|
66
|
-
postDots)));
|
|
67
|
-
};
|
|
68
|
-
PagerNumericButtons.prototype.renderDots = function (page) {
|
|
69
|
-
var _this = this;
|
|
70
|
-
return (React.createElement("li", null,
|
|
71
|
-
React.createElement("a", { className: "k-link", onClick: function (e) { return _this.handlePageChange(e, page); }, href: "#" }, dots)));
|
|
72
|
-
};
|
|
73
|
-
PagerNumericButtons.prototype.renderOptionDots = function (page) {
|
|
74
|
-
return (React.createElement("option", { className: "k-link", value: page }, dots));
|
|
50
|
+
var numerics = buttons.map(function (page) { return (React.createElement(Button, { className: classNames({ 'k-selected': _this.props.currentPage === page }), key: page, fillMode: 'flat', themeColor: 'primary', size: _this.props.size, rounded: null, role: "button", "aria-label": localizationService.toLanguageString(pageNumberLabelMessage.messageKey, pageNumberLabelMessage.defaultMessage) + ' ' + page, "aria-current": _this.props.currentPage === page ? true : undefined, onClick: function (e) { return _this.handlePageChange(e, page); } }, page)); });
|
|
51
|
+
var options = buttons.map(function (page) { return (React.createElement("option", { key: page }, page)); });
|
|
52
|
+
return (React.createElement(React.Fragment, null,
|
|
53
|
+
React.createElement("select", { className: classNames('k-picker k-dropdown-list k-dropdown k-rounded-md', (_a = {},
|
|
54
|
+
_a["k-picker-".concat(kendoThemeMaps.sizeMap[this.props.size] || this.props.size)] = this.props.size,
|
|
55
|
+
_a)), "aria-label": localizationService.toLanguageString(mobileSelectMessage.messageKey, mobileSelectMessage.defaultMessage), value: this.props.currentPage, onChange: function (e) { return _this.handleSelectPageChange(e); } }, options),
|
|
56
|
+
React.createElement("div", { className: "k-pager-numbers" }, numerics)));
|
|
75
57
|
};
|
|
76
58
|
Object.defineProperty(PagerNumericButtons.prototype, "end", {
|
|
77
59
|
get: function () {
|
|
@@ -4,11 +4,12 @@ import * as React from 'react';
|
|
|
4
4
|
*/
|
|
5
5
|
export interface PagerPageSizesProps {
|
|
6
6
|
pageSize: number;
|
|
7
|
+
pageSizes: number[];
|
|
8
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
7
9
|
pageChange?: (event: {
|
|
8
10
|
skip: number;
|
|
9
11
|
take: number;
|
|
10
12
|
}, e: React.SyntheticEvent<any>) => void;
|
|
11
|
-
pageSizes: number[];
|
|
12
13
|
messagesMap?: (messageKey: string) => ({
|
|
13
14
|
messageKey: string;
|
|
14
15
|
defaultMessage: string;
|
|
@@ -42,7 +42,7 @@ var PagerPageSizes = /** @class */ (function (_super) {
|
|
|
42
42
|
var pageSelectionMessage = this.props.messagesMap ? this.props.messagesMap(pagerPageSelection) :
|
|
43
43
|
({ messageKey: pagerPageSelection, defaultMessage: messages[pagerPageSelection] });
|
|
44
44
|
return (React.createElement("span", { className: "k-pager-sizes k-label" },
|
|
45
|
-
React.createElement(DropDownList, { value: this.props.pageSize, data: sizes, onChange: this.pageSizeChange, ariaLabel: provideLocalizationService(this).toLanguageString(pageSelectionMessage.messageKey, pageSelectionMessage.defaultMessage) }),
|
|
45
|
+
React.createElement(DropDownList, { value: this.props.pageSize, data: sizes, onChange: this.pageSizeChange, ariaLabel: provideLocalizationService(this).toLanguageString(pageSelectionMessage.messageKey, pageSelectionMessage.defaultMessage), size: this.props.size }),
|
|
46
46
|
provideLocalizationService(this).toLanguageString(itemPerPageMessage.messageKey, itemPerPageMessage.defaultMessage)));
|
|
47
47
|
};
|
|
48
48
|
return PagerPageSizes;
|
|
@@ -8,7 +8,7 @@ exports.packageMetadata = {
|
|
|
8
8
|
name: '@progress/kendo-react-data-tools',
|
|
9
9
|
productName: 'KendoReact',
|
|
10
10
|
productCodes: ['KENDOUIREACT', 'KENDOUICOMPLETE'],
|
|
11
|
-
publishDate:
|
|
11
|
+
publishDate: 1673259211,
|
|
12
12
|
version: '',
|
|
13
13
|
licensingDocsUrl: 'https://www.telerik.com/kendo-react-ui/my-license/?utm_medium=product&utm_source=kendoreact&utm_campaign=kendo-ui-react-purchase-license-keys-warning'
|
|
14
14
|
};
|
|
@@ -72,6 +72,18 @@ export interface PagerProps {
|
|
|
72
72
|
* Defines if the pager will be responsive. Defaults to `true`.
|
|
73
73
|
*/
|
|
74
74
|
responsive?: boolean;
|
|
75
|
+
/**
|
|
76
|
+
* Configures the `size` of the Pager.
|
|
77
|
+
*
|
|
78
|
+
* The available options are:
|
|
79
|
+
* - small
|
|
80
|
+
* - medium
|
|
81
|
+
* - large
|
|
82
|
+
* - null—Does not set a size `className`.
|
|
83
|
+
*
|
|
84
|
+
* @default `medium`
|
|
85
|
+
*/
|
|
86
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
75
87
|
/**
|
|
76
88
|
* Fires when the page of the Pager is changed. You have to handle the event yourself and page the data.
|
|
77
89
|
*/
|
|
@@ -101,6 +113,7 @@ export declare class Pager extends React.Component<PagerProps> {
|
|
|
101
113
|
previousNext: PropTypes.Requireable<boolean>;
|
|
102
114
|
onPageChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
103
115
|
messagesMap: PropTypes.Requireable<(...args: any[]) => any>;
|
|
116
|
+
size: PropTypes.Requireable<string | null>;
|
|
104
117
|
};
|
|
105
118
|
/**
|
|
106
119
|
* @hidden
|
|
@@ -109,6 +122,7 @@ export declare class Pager extends React.Component<PagerProps> {
|
|
|
109
122
|
buttonCount: number;
|
|
110
123
|
info: boolean;
|
|
111
124
|
type: string;
|
|
125
|
+
size: string;
|
|
112
126
|
};
|
|
113
127
|
private _element;
|
|
114
128
|
/**
|
package/dist/npm/pager/Pager.js
CHANGED
|
@@ -32,6 +32,7 @@ var PropTypes = require("prop-types");
|
|
|
32
32
|
var PagerNumericButtons_1 = require("./PagerNumericButtons");
|
|
33
33
|
var PagerInput_1 = require("./PagerInput");
|
|
34
34
|
var PagerPageSizes_1 = require("./PagerPageSizes");
|
|
35
|
+
var kendo_react_buttons_1 = require("@progress/kendo-react-buttons");
|
|
35
36
|
var messages_1 = require("../messages");
|
|
36
37
|
var kendo_react_intl_1 = require("@progress/kendo-react-intl");
|
|
37
38
|
var kendo_react_common_1 = require("@progress/kendo-react-common");
|
|
@@ -116,13 +117,14 @@ var Pager = /** @class */ (function (_super) {
|
|
|
116
117
|
* @hidden
|
|
117
118
|
*/
|
|
118
119
|
Pager.prototype.render = function () {
|
|
120
|
+
var _a;
|
|
119
121
|
var _this = this;
|
|
120
|
-
var
|
|
122
|
+
var _b = this.props, skip = _b.skip, take = _b.take, total = _b.total, pageSizes = _b.pageSizes, size = _b.size, messagesMap = _b.messagesMap;
|
|
121
123
|
var localizationService = (0, kendo_react_intl_1.provideLocalizationService)(this);
|
|
122
124
|
var intlService = (0, kendo_react_intl_1.provideIntlService)(this);
|
|
123
125
|
var currentPage = Math.floor(skip / take) + 1;
|
|
124
126
|
var changer = this.props.type === 'numeric' ?
|
|
125
|
-
(React.createElement(PagerNumericButtons_1.PagerNumericButtons, { buttonCount: this.props.buttonCount || 0, totalPages: this.totalPages, currentPage: currentPage, pageChange: this.changePage, messagesMap: this.props.messagesMap })) : (React.createElement(PagerInput_1.PagerInput, { currentPage: currentPage, totalPages: this.totalPages, pageChange: this.changePage, messagesMap: messagesMap }));
|
|
127
|
+
(React.createElement(PagerNumericButtons_1.PagerNumericButtons, { buttonCount: this.props.buttonCount || 0, totalPages: this.totalPages, currentPage: currentPage, pageChange: this.changePage, messagesMap: this.props.messagesMap, size: this.props.size })) : (React.createElement(PagerInput_1.PagerInput, { buttonCount: this.props.buttonCount || 0, currentPage: currentPage, totalPages: this.totalPages, pageChange: this.changePage, messagesMap: messagesMap, size: this.props.size }));
|
|
126
128
|
var firstPageMessage = messagesMap ? messagesMap(messages_1.pagerFirstPage) :
|
|
127
129
|
({ messageKey: messages_1.pagerFirstPage, defaultMessage: messages_1.messages[messages_1.pagerFirstPage] });
|
|
128
130
|
var previousPageMessage = messagesMap ? messagesMap(messages_1.pagerPreviousPage) :
|
|
@@ -139,34 +141,36 @@ var Pager = /** @class */ (function (_super) {
|
|
|
139
141
|
({ messageKey: messages_1.pagerAriaLabel, defaultMessage: messages_1.messages[messages_1.pagerAriaLabel] });
|
|
140
142
|
var first, prev, next, last;
|
|
141
143
|
if (this.props.previousNext) {
|
|
142
|
-
first = this.renderButton(1, 'k-
|
|
143
|
-
prev = this.renderButton(currentPage - 1, 'k-
|
|
144
|
-
next = this.renderButton(currentPage + 1, 'k-
|
|
145
|
-
last = this.renderButton(this.totalPages, 'k-
|
|
144
|
+
first = this.renderButton(1, 'k-pager-nav k-pager-first' + (currentPage === 1 ? ' k-disabled' : ''), localizationService.toLanguageString(firstPageMessage.messageKey, firstPageMessage.defaultMessage), 'caret-alt-to-left', (currentPage === 1 ? true : undefined));
|
|
145
|
+
prev = this.renderButton(currentPage - 1, 'k-pager-nav' + (currentPage === 1 ? ' k-disabled' : ''), localizationService.toLanguageString(previousPageMessage.messageKey, previousPageMessage.defaultMessage), 'caret-alt-left', (currentPage === 1 ? true : undefined));
|
|
146
|
+
next = this.renderButton(currentPage + 1, 'k-pager-nav' + (currentPage >= this.totalPages ? ' k-disabled' : ''), localizationService.toLanguageString(nextPageMessage.messageKey, nextPageMessage.defaultMessage), 'caret-alt-right', (currentPage >= this.totalPages ? true : undefined));
|
|
147
|
+
last = this.renderButton(this.totalPages, 'k-pager-nav k-pager-last' + (currentPage >= this.totalPages ? ' k-disabled' : ''), localizationService.toLanguageString(lastPageMessage.messageKey, lastPageMessage.defaultMessage), 'caret-alt-to-right', (currentPage >= this.totalPages ? true : undefined));
|
|
146
148
|
}
|
|
147
|
-
var pagerPageSizes = pageSizes && (React.createElement(PagerPageSizes_1.PagerPageSizes, { pageChange: this.onPageChange, pageSize: take, pageSizes: pageSizes, messagesMap: messagesMap }));
|
|
149
|
+
var pagerPageSizes = pageSizes && (React.createElement(PagerPageSizes_1.PagerPageSizes, { pageChange: this.onPageChange, pageSize: take, pageSizes: pageSizes, messagesMap: messagesMap, size: this.props.size }));
|
|
148
150
|
var info = this.props.info && (React.createElement("div", { className: "k-pager-info k-label" }, intlService
|
|
149
151
|
.format(localizationService.toLanguageString(infoMessage.messageKey, infoMessage.defaultMessage), [
|
|
150
152
|
Math.min(skip + 1, total),
|
|
151
153
|
Math.min(skip + take, total),
|
|
152
154
|
total
|
|
153
155
|
])));
|
|
154
|
-
return (React.createElement("div", { className: (0, kendo_react_common_1.classNames)('k-pager
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
156
|
+
return (React.createElement("div", { className: (0, kendo_react_common_1.classNames)('k-pager', (_a = {},
|
|
157
|
+
_a["k-pager-".concat(kendo_react_common_1.kendoThemeMaps.sizeMap[size] || size)] = size,
|
|
158
|
+
_a), this.props.className), style: this.props.style, role: "application", "aria-roledescription": "pager", "aria-keyshortcuts": localizationService.toLanguageString(ariaKeyshortcutsMessage.messageKey, ariaKeyshortcutsMessage.defaultMessage), "aria-label": localizationService.toLanguageString(ariaLabelMessage.messageKey, ariaLabelMessage.defaultMessage), ref: function (element) { return _this._element = element; } },
|
|
159
|
+
React.createElement("div", { className: (0, kendo_react_common_1.classNames)('k-pager-numbers-wrap', this.props.className) },
|
|
160
|
+
first,
|
|
161
|
+
prev,
|
|
162
|
+
changer,
|
|
163
|
+
next,
|
|
164
|
+
last),
|
|
160
165
|
pagerPageSizes,
|
|
161
166
|
info));
|
|
162
167
|
};
|
|
163
168
|
Pager.prototype.renderButton = function (page, className, title, icon, isDisabled) {
|
|
164
169
|
var _this = this;
|
|
165
|
-
return (React.createElement("
|
|
170
|
+
return (React.createElement(kendo_react_buttons_1.Button, { fillMode: 'flat', themeColor: 'base', size: this.props.size, rounded: null, className: className, icon: icon, title: title, role: "button", "aria-disabled": isDisabled, onClick: function (e) {
|
|
166
171
|
e.preventDefault();
|
|
167
172
|
_this.changePage(page, e);
|
|
168
|
-
}
|
|
169
|
-
React.createElement(kendo_react_common_1.Icon, { name: icon })));
|
|
173
|
+
} }));
|
|
170
174
|
};
|
|
171
175
|
Object.defineProperty(Pager.prototype, "totalPages", {
|
|
172
176
|
get: function () {
|
|
@@ -190,7 +194,8 @@ var Pager = /** @class */ (function (_super) {
|
|
|
190
194
|
pageSizes: PropTypes.arrayOf(PropTypes.number),
|
|
191
195
|
previousNext: PropTypes.bool,
|
|
192
196
|
onPageChange: PropTypes.func,
|
|
193
|
-
messagesMap: PropTypes.func
|
|
197
|
+
messagesMap: PropTypes.func,
|
|
198
|
+
size: PropTypes.oneOf([null, 'small', 'medium', 'large'])
|
|
194
199
|
};
|
|
195
200
|
/**
|
|
196
201
|
* @hidden
|
|
@@ -198,7 +203,8 @@ var Pager = /** @class */ (function (_super) {
|
|
|
198
203
|
Pager.defaultProps = {
|
|
199
204
|
buttonCount: 10,
|
|
200
205
|
info: true,
|
|
201
|
-
type: 'numeric'
|
|
206
|
+
type: 'numeric',
|
|
207
|
+
size: 'medium'
|
|
202
208
|
};
|
|
203
209
|
return Pager;
|
|
204
210
|
}(React.Component));
|
|
@@ -3,8 +3,10 @@ import * as React from 'react';
|
|
|
3
3
|
* @hidden
|
|
4
4
|
*/
|
|
5
5
|
export interface PagerInputProps {
|
|
6
|
+
buttonCount: number;
|
|
6
7
|
totalPages: number;
|
|
7
8
|
currentPage: number;
|
|
9
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
8
10
|
pageChange: (page: number, e: React.SyntheticEvent<any>) => any;
|
|
9
11
|
messagesMap?: (messageKey: string) => ({
|
|
10
12
|
messageKey: string;
|
|
@@ -19,4 +21,6 @@ export declare class PagerInput extends React.Component<PagerInputProps> {
|
|
|
19
21
|
onChange: (e: any) => void;
|
|
20
22
|
value: () => string;
|
|
21
23
|
render(): JSX.Element;
|
|
24
|
+
private get end();
|
|
25
|
+
private get start();
|
|
22
26
|
}
|
|
@@ -17,6 +17,7 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.PagerInput = void 0;
|
|
19
19
|
var React = require("react");
|
|
20
|
+
var kendo_react_common_1 = require("@progress/kendo-react-common");
|
|
20
21
|
var kendo_react_intl_1 = require("@progress/kendo-react-intl");
|
|
21
22
|
var messages_1 = require("./../messages");
|
|
22
23
|
/**
|
|
@@ -42,6 +43,7 @@ var PagerInput = /** @class */ (function (_super) {
|
|
|
42
43
|
return _this;
|
|
43
44
|
}
|
|
44
45
|
PagerInput.prototype.render = function () {
|
|
46
|
+
var _a;
|
|
45
47
|
var _this = this;
|
|
46
48
|
var intlService = (0, kendo_react_intl_1.provideIntlService)(this);
|
|
47
49
|
var localizationService = (0, kendo_react_intl_1.provideLocalizationService)(this);
|
|
@@ -51,14 +53,45 @@ var PagerInput = /** @class */ (function (_super) {
|
|
|
51
53
|
({ messageKey: messages_1.pagerOf, defaultMessage: messages_1.messages[messages_1.pagerOf] });
|
|
52
54
|
var totalPagesMessage = this.props.messagesMap ? this.props.messagesMap(messages_1.pagerTotalPages) :
|
|
53
55
|
({ messageKey: messages_1.pagerTotalPages, defaultMessage: messages_1.messages[messages_1.pagerTotalPages] });
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
.
|
|
59
|
-
|
|
60
|
-
|
|
56
|
+
var mobileSelectMessage = this.props.messagesMap ? this.props.messagesMap(messages_1.pagerMobileSelect) :
|
|
57
|
+
({ messageKey: messages_1.pagerMobileSelect, defaultMessage: messages_1.messages[messages_1.pagerMobileSelect] });
|
|
58
|
+
var buttons = [];
|
|
59
|
+
for (var idx = this.start; idx <= this.end; idx++) {
|
|
60
|
+
buttons.push(idx);
|
|
61
|
+
}
|
|
62
|
+
var options = buttons.map(function (page) { return (React.createElement("option", { key: page }, page)); });
|
|
63
|
+
return (React.createElement(React.Fragment, null,
|
|
64
|
+
React.createElement("select", { className: (0, kendo_react_common_1.classNames)('k-picker k-dropdown-list k-dropdown k-rounded-md', (_a = {},
|
|
65
|
+
_a["k-picker-".concat(kendo_react_common_1.kendoThemeMaps.sizeMap[this.props.size] || this.props.size)] = this.props.size,
|
|
66
|
+
_a)), "aria-label": localizationService.toLanguageString(mobileSelectMessage.messageKey, mobileSelectMessage.defaultMessage), value: this.props.currentPage, onChange: this.onChange }, options),
|
|
67
|
+
React.createElement("span", { className: "k-pager-input k-label" },
|
|
68
|
+
localizationService.toLanguageString(pageMessage.messageKey, pageMessage.defaultMessage),
|
|
69
|
+
React.createElement("span", { className: 'k-textbox k-input k-input-md k-rounded-md k-input-solid' },
|
|
70
|
+
React.createElement("input", { className: "k-input-inner", value: this.value(), onBlur: function () { return _this.forceUpdate(); }, onChange: this.onChange })), "".concat(localizationService.toLanguageString(ofMessage.messageKey, ofMessage.defaultMessage), " ").concat(intlService
|
|
71
|
+
.format(localizationService.toLanguageString(totalPagesMessage.messageKey, totalPagesMessage.defaultMessage), [
|
|
72
|
+
this.props.totalPages
|
|
73
|
+
])))));
|
|
61
74
|
};
|
|
75
|
+
Object.defineProperty(PagerInput.prototype, "end", {
|
|
76
|
+
get: function () {
|
|
77
|
+
return Math.min((this.start + this.props.buttonCount) - 1, this.props.totalPages);
|
|
78
|
+
},
|
|
79
|
+
enumerable: false,
|
|
80
|
+
configurable: true
|
|
81
|
+
});
|
|
82
|
+
Object.defineProperty(PagerInput.prototype, "start", {
|
|
83
|
+
get: function () {
|
|
84
|
+
var page = this.props.currentPage;
|
|
85
|
+
var buttonCount = this.props.buttonCount;
|
|
86
|
+
if (page > buttonCount) {
|
|
87
|
+
var reminder = (page % buttonCount);
|
|
88
|
+
return (reminder === 0) ? (page - buttonCount) + 1 : (page - reminder) + 1;
|
|
89
|
+
}
|
|
90
|
+
return 1;
|
|
91
|
+
},
|
|
92
|
+
enumerable: false,
|
|
93
|
+
configurable: true
|
|
94
|
+
});
|
|
62
95
|
return PagerInput;
|
|
63
96
|
}(React.Component));
|
|
64
97
|
exports.PagerInput = PagerInput;
|
|
@@ -6,6 +6,7 @@ export interface PagerNumericButtonsProps {
|
|
|
6
6
|
buttonCount: number;
|
|
7
7
|
totalPages: number;
|
|
8
8
|
currentPage: number;
|
|
9
|
+
size?: null | 'small' | 'medium' | 'large';
|
|
9
10
|
pageChange: (page: number, e: React.SyntheticEvent<any>) => any;
|
|
10
11
|
messagesMap?: (messageKey: string) => ({
|
|
11
12
|
messageKey: string;
|
|
@@ -17,8 +18,6 @@ export interface PagerNumericButtonsProps {
|
|
|
17
18
|
*/
|
|
18
19
|
export declare class PagerNumericButtons extends React.Component<PagerNumericButtonsProps> {
|
|
19
20
|
render(): JSX.Element;
|
|
20
|
-
private renderDots;
|
|
21
|
-
private renderOptionDots;
|
|
22
21
|
private handlePageChange;
|
|
23
22
|
private handleSelectPageChange;
|
|
24
23
|
private get end();
|