@progress/kendo-react-data-tools 5.5.1-dev.202207141327 → 5.6.0-dev.202208040930

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 (48) hide show
  1. package/README.md +2 -2
  2. package/dist/cdn/js/kendo-react-data-tools.js +1 -1
  3. package/dist/es/filter/Expression.d.ts +2 -0
  4. package/dist/es/filter/Expression.js +8 -7
  5. package/dist/es/filter/Filter.d.ts +10 -0
  6. package/dist/es/filter/Filter.js +3 -1
  7. package/dist/es/filter/Group.d.ts +4 -0
  8. package/dist/es/filter/Group.js +8 -6
  9. package/dist/es/filter/filters/BooleanFilter.d.ts +1 -0
  10. package/dist/es/filter/filters/BooleanFilter.js +2 -1
  11. package/dist/es/filter/filters/DateFilter.d.ts +1 -0
  12. package/dist/es/filter/filters/DateFilter.js +3 -2
  13. package/dist/es/filter/filters/EnumFilter.d.ts +1 -0
  14. package/dist/es/filter/filters/EnumFilter.js +5 -4
  15. package/dist/es/filter/filters/NumericFilter.js +6 -2
  16. package/dist/es/filter/filters/TextFilter.d.ts +5 -0
  17. package/dist/es/filter/filters/TextFilter.js +8 -2
  18. package/dist/es/messages/index.d.ts +60 -0
  19. package/dist/es/messages/index.js +60 -0
  20. package/dist/es/package-metadata.js +1 -1
  21. package/dist/es/pager/Pager.js +13 -9
  22. package/dist/es/pager/PagerNumericButtons.d.ts +4 -0
  23. package/dist/es/pager/PagerNumericButtons.js +9 -2
  24. package/dist/es/pager/PagerPageSizes.js +4 -2
  25. package/dist/npm/filter/Expression.d.ts +2 -0
  26. package/dist/npm/filter/Expression.js +7 -6
  27. package/dist/npm/filter/Filter.d.ts +10 -0
  28. package/dist/npm/filter/Filter.js +3 -1
  29. package/dist/npm/filter/Group.d.ts +4 -0
  30. package/dist/npm/filter/Group.js +7 -5
  31. package/dist/npm/filter/filters/BooleanFilter.d.ts +1 -0
  32. package/dist/npm/filter/filters/BooleanFilter.js +2 -1
  33. package/dist/npm/filter/filters/DateFilter.d.ts +1 -0
  34. package/dist/npm/filter/filters/DateFilter.js +3 -2
  35. package/dist/npm/filter/filters/EnumFilter.d.ts +1 -0
  36. package/dist/npm/filter/filters/EnumFilter.js +4 -3
  37. package/dist/npm/filter/filters/NumericFilter.js +6 -2
  38. package/dist/npm/filter/filters/TextFilter.d.ts +5 -0
  39. package/dist/npm/filter/filters/TextFilter.js +8 -2
  40. package/dist/npm/messages/index.d.ts +60 -0
  41. package/dist/npm/messages/index.js +62 -2
  42. package/dist/npm/package-metadata.js +1 -1
  43. package/dist/npm/pager/Pager.js +12 -8
  44. package/dist/npm/pager/PagerNumericButtons.d.ts +4 -0
  45. package/dist/npm/pager/PagerNumericButtons.js +9 -2
  46. package/dist/npm/pager/PagerPageSizes.js +3 -1
  47. package/dist/systemjs/kendo-react-data-tools.js +1 -1
  48. package/package.json +12 -10
@@ -122,7 +122,7 @@ var Pager = /** @class */ (function (_super) {
122
122
  var intlService = (0, kendo_react_intl_1.provideIntlService)(this);
123
123
  var currentPage = Math.floor(skip / take) + 1;
124
124
  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 })) : (React.createElement(PagerInput_1.PagerInput, { currentPage: currentPage, totalPages: this.totalPages, pageChange: this.changePage, messagesMap: messagesMap }));
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 }));
126
126
  var firstPageMessage = messagesMap ? messagesMap(messages_1.pagerFirstPage) :
127
127
  ({ messageKey: messages_1.pagerFirstPage, defaultMessage: messages_1.messages[messages_1.pagerFirstPage] });
128
128
  var previousPageMessage = messagesMap ? messagesMap(messages_1.pagerPreviousPage) :
@@ -133,12 +133,16 @@ var Pager = /** @class */ (function (_super) {
133
133
  ({ messageKey: messages_1.pagerLastPage, defaultMessage: messages_1.messages[messages_1.pagerLastPage] });
134
134
  var infoMessage = messagesMap ? messagesMap(messages_1.pagerInfo) :
135
135
  ({ messageKey: messages_1.pagerInfo, defaultMessage: messages_1.messages[messages_1.pagerInfo] });
136
+ var ariaKeyshortcutsMessage = messagesMap ? messagesMap(messages_1.pagerAriaKeyshortcuts) :
137
+ ({ messageKey: messages_1.pagerAriaKeyshortcuts, defaultMessage: messages_1.messages[messages_1.pagerAriaKeyshortcuts] });
138
+ var ariaLabelMessage = messagesMap ? messagesMap(messages_1.pagerAriaLabel) :
139
+ ({ messageKey: messages_1.pagerAriaLabel, defaultMessage: messages_1.messages[messages_1.pagerAriaLabel] });
136
140
  var first, prev, next, last;
137
141
  if (this.props.previousNext) {
138
- first = this.renderButton(1, 'k-link k-pager-nav k-pager-first' + (currentPage === 1 ? ' k-disabled' : ''), localizationService.toLanguageString(firstPageMessage.messageKey, firstPageMessage.defaultMessage), 'k-icon k-i-arrow-end-left');
139
- prev = this.renderButton(currentPage - 1, 'k-link k-pager-nav' + (currentPage === 1 ? ' k-disabled' : ''), localizationService.toLanguageString(previousPageMessage.messageKey, previousPageMessage.defaultMessage), 'k-icon k-i-arrow-60-left');
140
- next = this.renderButton(currentPage + 1, 'k-link k-pager-nav' + (currentPage >= this.totalPages ? ' k-disabled' : ''), localizationService.toLanguageString(nextPageMessage.messageKey, nextPageMessage.defaultMessage), 'k-icon k-i-arrow-60-right');
141
- last = this.renderButton(this.totalPages, 'k-link k-pager-nav k-pager-last' + (currentPage >= this.totalPages ? ' k-disabled' : ''), localizationService.toLanguageString(lastPageMessage.messageKey, lastPageMessage.defaultMessage), 'k-icon k-i-arrow-end-right');
142
+ first = this.renderButton(1, 'k-link k-pager-nav k-pager-first' + (currentPage === 1 ? ' k-disabled' : ''), localizationService.toLanguageString(firstPageMessage.messageKey, firstPageMessage.defaultMessage), 'k-icon k-i-arrow-end-left', (currentPage === 1 ? true : undefined));
143
+ prev = this.renderButton(currentPage - 1, 'k-link k-pager-nav' + (currentPage === 1 ? ' k-disabled' : ''), localizationService.toLanguageString(previousPageMessage.messageKey, previousPageMessage.defaultMessage), 'k-icon k-i-arrow-60-left', (currentPage === 1 ? true : undefined));
144
+ next = this.renderButton(currentPage + 1, 'k-link k-pager-nav' + (currentPage >= this.totalPages ? ' k-disabled' : ''), localizationService.toLanguageString(nextPageMessage.messageKey, nextPageMessage.defaultMessage), 'k-icon k-i-arrow-60-right', (currentPage >= this.totalPages ? true : undefined));
145
+ last = this.renderButton(this.totalPages, 'k-link k-pager-nav k-pager-last' + (currentPage >= this.totalPages ? ' k-disabled' : ''), localizationService.toLanguageString(lastPageMessage.messageKey, lastPageMessage.defaultMessage), 'k-icon k-i-arrow-end-right', (currentPage >= this.totalPages ? true : undefined));
142
146
  }
143
147
  var pagerPageSizes = pageSizes && (React.createElement(PagerPageSizes_1.PagerPageSizes, { pageChange: this.onPageChange, pageSize: take, pageSizes: pageSizes, messagesMap: messagesMap }));
144
148
  var info = this.props.info && (React.createElement("div", { className: "k-pager-info k-label" }, intlService
@@ -147,7 +151,7 @@ var Pager = /** @class */ (function (_super) {
147
151
  Math.min(skip + take, total),
148
152
  total
149
153
  ])));
150
- return (React.createElement("div", { className: (0, kendo_react_common_1.classNames)('k-pager-wrap k-pager k-widget', this.props.className), style: this.props.style, role: "navigation", ref: function (element) { return _this._element = element; } },
154
+ return (React.createElement("div", { className: (0, kendo_react_common_1.classNames)('k-pager-wrap k-pager k-widget', 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; } },
151
155
  first,
152
156
  prev,
153
157
  changer,
@@ -156,12 +160,12 @@ var Pager = /** @class */ (function (_super) {
156
160
  pagerPageSizes,
157
161
  info));
158
162
  };
159
- Pager.prototype.renderButton = function (page, className, title, icon) {
163
+ Pager.prototype.renderButton = function (page, className, title, icon, isDisabled) {
160
164
  var _this = this;
161
165
  return (React.createElement("a", { onClick: function (e) {
162
166
  e.preventDefault();
163
167
  _this.changePage(page, e);
164
- }, href: "#", className: className, title: title },
168
+ }, href: "#", className: className, title: title, role: "button", "aria-disabled": isDisabled },
165
169
  React.createElement("span", { className: icon })));
166
170
  };
167
171
  Object.defineProperty(Pager.prototype, "totalPages", {
@@ -7,6 +7,10 @@ export interface PagerNumericButtonsProps {
7
7
  totalPages: number;
8
8
  currentPage: number;
9
9
  pageChange: (page: number, e: React.SyntheticEvent<any>) => any;
10
+ messagesMap?: (messageKey: string) => ({
11
+ messageKey: string;
12
+ defaultMessage: string;
13
+ });
10
14
  }
11
15
  /**
12
16
  * @hidden
@@ -18,6 +18,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.PagerNumericButtons = void 0;
19
19
  var React = require("react");
20
20
  var kendo_react_common_1 = require("@progress/kendo-react-common");
21
+ var messages_1 = require("../messages");
22
+ var kendo_react_intl_1 = require("@progress/kendo-react-intl");
21
23
  var dots = '...';
22
24
  /**
23
25
  * @hidden
@@ -38,21 +40,26 @@ var PagerNumericButtons = /** @class */ (function (_super) {
38
40
  }
39
41
  PagerNumericButtons.prototype.render = function () {
40
42
  var _this = this;
43
+ var localizationService = (0, kendo_react_intl_1.provideLocalizationService)(this);
41
44
  var prevDots = this.start > 1 && this.renderDots(this.start - 1);
42
45
  var postDots = this.end < this.props.totalPages && this.renderDots(this.end + 1);
43
46
  var prevOptionDots = this.start > 1 && this.renderOptionDots(this.start - 1);
44
47
  var postOptionDots = this.end < this.props.totalPages && this.renderOptionDots(this.end + 1);
48
+ var mobileSelectMessage = this.props.messagesMap ? this.props.messagesMap(messages_1.pagerMobileSelect) :
49
+ ({ messageKey: messages_1.pagerMobileSelect, defaultMessage: messages_1.messages[messages_1.pagerMobileSelect] });
50
+ var pageNumberLabelMessage = this.props.messagesMap ? this.props.messagesMap(messages_1.pagerPageNumberLabel) :
51
+ ({ messageKey: messages_1.pagerPageNumberLabel, defaultMessage: messages_1.messages[messages_1.pagerPageNumberLabel] });
45
52
  var buttons = [];
46
53
  for (var idx = this.start; idx <= this.end; idx++) {
47
54
  buttons.push(idx);
48
55
  }
49
56
  var numerics = buttons.map(function (page) { return (React.createElement("li", { key: page },
50
- React.createElement("a", { href: "#", onClick: function (e) { return _this.handlePageChange(e, page); }, className: (0, kendo_react_common_1.classNames)('k-link', {
57
+ React.createElement("a", { role: "button", "aria-label": localizationService.toLanguageString(pageNumberLabelMessage.messageKey, pageNumberLabelMessage.defaultMessage) + ' ' + page, "aria-current": _this.props.currentPage === page ? true : undefined, href: "#", onClick: function (e) { return _this.handlePageChange(e, page); }, className: (0, kendo_react_common_1.classNames)('k-link', {
51
58
  'k-selected': _this.props.currentPage === page
52
59
  }) }, page))); });
53
60
  var options = buttons.map(function (page) { return (React.createElement("option", { key: page, className: (0, kendo_react_common_1.classNames)('k-link') }, page)); });
54
61
  return (React.createElement("div", { className: "k-pager-numbers-wrap" },
55
- React.createElement("select", { className: "k-dropdown", value: this.props.currentPage, onChange: function (e) { return _this.handleSelectPageChange(e); } },
62
+ React.createElement("select", { className: "k-dropdown", "aria-label": localizationService.toLanguageString(mobileSelectMessage.messageKey, mobileSelectMessage.defaultMessage), value: this.props.currentPage, onChange: function (e) { return _this.handleSelectPageChange(e); } },
56
63
  prevOptionDots,
57
64
  options,
58
65
  postOptionDots),
@@ -42,8 +42,10 @@ var PagerPageSizes = /** @class */ (function (_super) {
42
42
  }
43
43
  var itemPerPageMessage = this.props.messagesMap ? this.props.messagesMap(messages_1.pagerItemPerPage) :
44
44
  ({ messageKey: messages_1.pagerItemPerPage, defaultMessage: messages_1.messages[messages_1.pagerItemPerPage] });
45
+ var pageSelectionMessage = this.props.messagesMap ? this.props.messagesMap(messages_1.pagerPageSelection) :
46
+ ({ messageKey: messages_1.pagerPageSelection, defaultMessage: messages_1.messages[messages_1.pagerPageSelection] });
45
47
  return (React.createElement("span", { className: "k-pager-sizes k-label" },
46
- React.createElement(kendo_react_dropdowns_1.DropDownList, { value: this.props.pageSize, data: sizes, onChange: this.pageSizeChange }),
48
+ React.createElement(kendo_react_dropdowns_1.DropDownList, { value: this.props.pageSize, data: sizes, onChange: this.pageSizeChange, ariaLabel: (0, kendo_react_intl_1.provideLocalizationService)(this).toLanguageString(pageSelectionMessage.messageKey, pageSelectionMessage.defaultMessage) }),
47
49
  (0, kendo_react_intl_1.provideLocalizationService)(this).toLanguageString(itemPerPageMessage.messageKey, itemPerPageMessage.defaultMessage)));
48
50
  };
49
51
  return PagerPageSizes;