@progress/kendo-react-data-tools 5.4.0-dev.202205271059 → 5.4.0-dev.202206090823

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 (126) hide show
  1. package/dist/cdn/js/kendo-react-data-tools.js +1 -1
  2. package/dist/es/columnmenu/ColumnMenu.js +11 -7
  3. package/dist/es/columnmenu/ColumnMenuFilterForm.d.ts +1 -0
  4. package/dist/es/columnmenu/ColumnMenuItem.js +1 -1
  5. package/dist/es/columnmenu/ColumnMenuOperators.js +12 -8
  6. package/dist/es/drag/ColumnDraggable.d.ts +1 -0
  7. package/dist/es/drag/ColumnDraggable.js +1 -0
  8. package/dist/es/drag/ColumnResize.d.ts +5 -4
  9. package/dist/es/drag/ColumnResize.js +3 -0
  10. package/dist/es/drag/ColumnResizer.js +1 -0
  11. package/dist/es/drag/CommonDragLogic.d.ts +4 -3
  12. package/dist/es/drag/CommonDragLogic.js +1 -0
  13. package/dist/es/drag/DragClue.d.ts +1 -1
  14. package/dist/es/drag/DropClue.d.ts +1 -1
  15. package/dist/es/filter/Filter.d.ts +1 -1
  16. package/dist/es/filter/Filter.js +3 -3
  17. package/dist/es/filter/Group.js +44 -24
  18. package/dist/es/filter/filters/BooleanFilter.d.ts +2 -2
  19. package/dist/es/filter/filters/EnumFilter.d.ts +2 -2
  20. package/dist/es/filter/filters/TextFilter.d.ts +1 -2
  21. package/dist/es/filter/operators.js +12 -8
  22. package/dist/es/filteringCells/BooleanFilter.js +9 -5
  23. package/dist/es/filteringCells/FilterComponent.js +10 -6
  24. package/dist/es/header/ColumnProps.d.ts +8 -8
  25. package/dist/es/header/FilterRow.js +1 -1
  26. package/dist/es/header/HeaderCell.d.ts +1 -1
  27. package/dist/es/header/HeaderCell.js +2 -2
  28. package/dist/es/header/HeaderRow.d.ts +9 -7
  29. package/dist/es/header/HeaderSelectionCell.d.ts +2 -1
  30. package/dist/es/header/HeaderSelectionCell.js +2 -2
  31. package/dist/es/header/HeaderThElement.d.ts +10 -10
  32. package/dist/es/header/SortSettings.js +9 -5
  33. package/dist/es/header/utils/index.d.ts +5 -2
  34. package/dist/es/header/utils/index.js +1 -1
  35. package/dist/es/navigation/TableKeyboardNavigation.d.ts +7 -7
  36. package/dist/es/navigation/TableKeyboardNavigation.js +9 -5
  37. package/dist/es/navigation/TableKeyboardNavigationContext.d.ts +1 -1
  38. package/dist/es/navigation/constants.js +10 -6
  39. package/dist/es/navigation/utils.d.ts +14 -14
  40. package/dist/es/navigation/utils.js +10 -10
  41. package/dist/es/package-metadata.js +1 -1
  42. package/dist/es/pager/Pager.d.ts +2 -1
  43. package/dist/es/pager/Pager.js +18 -1
  44. package/dist/es/pager/PagerInput.js +2 -2
  45. package/dist/es/pager/PagerPageSizes.d.ts +1 -1
  46. package/dist/es/selection/utils.d.ts +3 -3
  47. package/dist/es/selection/utils.js +11 -7
  48. package/dist/es/utils/data-operations.js +11 -7
  49. package/dist/es/utils/group-operations.d.ts +1 -1
  50. package/dist/es/utils/group-operations.js +1 -1
  51. package/dist/es/virtualization/columns.js +9 -5
  52. package/dist/npm/columnmenu/ColumnMenu.js +14 -10
  53. package/dist/npm/columnmenu/ColumnMenuFilterForm.d.ts +1 -0
  54. package/dist/npm/columnmenu/ColumnMenuFilterForm.js +1 -1
  55. package/dist/npm/columnmenu/ColumnMenuFilterLogic.js +1 -1
  56. package/dist/npm/columnmenu/ColumnMenuFilters.js +2 -2
  57. package/dist/npm/columnmenu/ColumnMenuItem.js +2 -2
  58. package/dist/npm/columnmenu/ColumnMenuOperators.js +12 -8
  59. package/dist/npm/columnmenu/index.js +5 -1
  60. package/dist/npm/drag/ColumnDraggable.d.ts +1 -0
  61. package/dist/npm/drag/ColumnDraggable.js +1 -0
  62. package/dist/npm/drag/ColumnResize.d.ts +5 -4
  63. package/dist/npm/drag/ColumnResize.js +3 -0
  64. package/dist/npm/drag/ColumnResizer.js +1 -0
  65. package/dist/npm/drag/CommonDragLogic.d.ts +4 -3
  66. package/dist/npm/drag/CommonDragLogic.js +3 -2
  67. package/dist/npm/drag/DragClue.d.ts +1 -1
  68. package/dist/npm/drag/DragClue.js +1 -1
  69. package/dist/npm/drag/DropClue.d.ts +1 -1
  70. package/dist/npm/drag/DropClue.js +1 -1
  71. package/dist/npm/filter/Expression.js +6 -6
  72. package/dist/npm/filter/Filter.d.ts +1 -1
  73. package/dist/npm/filter/Filter.js +4 -4
  74. package/dist/npm/filter/Group.js +48 -28
  75. package/dist/npm/filter/filters/BooleanFilter.d.ts +2 -2
  76. package/dist/npm/filter/filters/EnumFilter.d.ts +2 -2
  77. package/dist/npm/filter/filters/EnumFilter.js +2 -2
  78. package/dist/npm/filter/filters/TextFilter.d.ts +1 -2
  79. package/dist/npm/filter/filters/index.js +5 -1
  80. package/dist/npm/filter/index.js +5 -1
  81. package/dist/npm/filter/operators.js +12 -8
  82. package/dist/npm/filteringCells/BooleanFilter.js +10 -6
  83. package/dist/npm/filteringCells/DateFilter.js +1 -1
  84. package/dist/npm/filteringCells/FilterComponent.js +11 -7
  85. package/dist/npm/filteringCells/NumericFilter.js +1 -1
  86. package/dist/npm/filteringCells/TextFilter.js +1 -1
  87. package/dist/npm/filteringCells/index.js +5 -1
  88. package/dist/npm/header/ColumnProps.d.ts +8 -8
  89. package/dist/npm/header/FilterRow.js +3 -3
  90. package/dist/npm/header/Header.js +1 -1
  91. package/dist/npm/header/HeaderCell.d.ts +1 -1
  92. package/dist/npm/header/HeaderCell.js +2 -2
  93. package/dist/npm/header/HeaderRow.d.ts +9 -7
  94. package/dist/npm/header/HeaderRow.js +4 -4
  95. package/dist/npm/header/HeaderSelectionCell.d.ts +2 -1
  96. package/dist/npm/header/HeaderSelectionCell.js +2 -2
  97. package/dist/npm/header/HeaderThElement.d.ts +10 -10
  98. package/dist/npm/header/HeaderThElement.js +1 -1
  99. package/dist/npm/header/SortSettings.js +9 -5
  100. package/dist/npm/header/index.js +5 -1
  101. package/dist/npm/header/utils/index.d.ts +5 -2
  102. package/dist/npm/header/utils/index.js +1 -1
  103. package/dist/npm/main.js +5 -1
  104. package/dist/npm/navigation/TableKeyboardNavigation.d.ts +7 -7
  105. package/dist/npm/navigation/TableKeyboardNavigation.js +17 -13
  106. package/dist/npm/navigation/TableKeyboardNavigationContext.d.ts +1 -1
  107. package/dist/npm/navigation/constants.js +10 -6
  108. package/dist/npm/navigation/utils.d.ts +14 -14
  109. package/dist/npm/navigation/utils.js +13 -13
  110. package/dist/npm/package-metadata.js +1 -1
  111. package/dist/npm/pager/Pager.d.ts +2 -1
  112. package/dist/npm/pager/Pager.js +24 -7
  113. package/dist/npm/pager/PagerInput.js +5 -5
  114. package/dist/npm/pager/PagerNumericButtons.js +2 -2
  115. package/dist/npm/pager/PagerPageSizes.d.ts +1 -1
  116. package/dist/npm/pager/PagerPageSizes.js +2 -2
  117. package/dist/npm/selection/TableSelection.js +15 -15
  118. package/dist/npm/selection/utils.d.ts +3 -3
  119. package/dist/npm/selection/utils.js +21 -17
  120. package/dist/npm/utils/data-operations.js +14 -10
  121. package/dist/npm/utils/group-operations.d.ts +1 -1
  122. package/dist/npm/utils/group-operations.js +4 -4
  123. package/dist/npm/virtualization/columns.js +9 -5
  124. package/dist/npm/virtualization/index.js +5 -1
  125. package/dist/systemjs/kendo-react-data-tools.js +1 -1
  126. package/package.json +10 -10
@@ -20,10 +20,14 @@ var __rest = (this && this.__rest) || function (s, e) {
20
20
  }
21
21
  return t;
22
22
  };
23
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
24
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
25
- to[j] = from[i];
26
- return to;
23
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
24
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
25
+ if (ar || !(i in from)) {
26
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
27
+ ar[i] = from[i];
28
+ }
29
+ }
30
+ return to.concat(ar || Array.prototype.slice.call(from));
27
31
  };
28
32
  import * as React from 'react';
29
33
  import { Popup } from '@progress/kendo-react-popup';
@@ -74,7 +78,7 @@ var ColumnMenuWrapper = function (props) {
74
78
  }, [show]);
75
79
  var filterItemClick = React.useCallback(function () { return setFilterExpand(!filterExpand); }, [filterExpand]);
76
80
  var changeSort = React.useCallback(function (event, dir) {
77
- var newSort = __spreadArray([], sort);
81
+ var newSort = __spreadArray([], sort, true);
78
82
  var currentSortIndex = newSort.findIndex(function (d) { return d.field === field; });
79
83
  var newSortDescriptor = { field: field, dir: dir };
80
84
  if (currentSortIndex >= 0) {
@@ -94,7 +98,7 @@ var ColumnMenuWrapper = function (props) {
94
98
  }
95
99
  }, [sort, field, onSortChange, closeMenu]);
96
100
  var filterChange = React.useCallback(function (_event, nextFilter, prevFilter) {
97
- var stateFilter = __assign(__assign({}, currentFilter), { filters: __spreadArray([], currentFilter.filters) });
101
+ var stateFilter = __assign(__assign({}, currentFilter), { filters: __spreadArray([], currentFilter.filters, true) });
98
102
  var index = stateFilter.filters.indexOf(prevFilter);
99
103
  stateFilter.filters.splice(index, 1, nextFilter);
100
104
  setCurrentFilter(stateFilter);
@@ -159,7 +163,7 @@ var ColumnMenuWrapper = function (props) {
159
163
  props.itemsRender.call(undefined, menuItems, { closeMenu: closeMenu, field: field }) :
160
164
  menuItems)));
161
165
  var rendering = [button, popup];
162
- return props.render ? props.render.call(undefined, rendering) : rendering;
166
+ return React.createElement(React.Fragment, null, props.render ? props.render.call(undefined, rendering) : rendering);
163
167
  };
164
168
  /**
165
169
  * The `ColumnMenuTextColumn` component. Use it for `string` type columns.
@@ -4,6 +4,7 @@ export interface ColumnMenuFormProps {
4
4
  onSubmit?: React.FormEventHandler<HTMLFormElement>;
5
5
  onReset?: React.FormEventHandler<HTMLFormElement>;
6
6
  actions?: React.ReactNode;
7
+ children?: React.ReactNode;
7
8
  }
8
9
  export declare const ColumnMenuForm: React.FunctionComponent<ColumnMenuFormProps>;
9
10
  /**
@@ -2,6 +2,6 @@ import * as React from 'react';
2
2
  import { classNames } from '@progress/kendo-react-common';
3
3
  export var ColumnMenuItem = function (props) {
4
4
  return (React.createElement("div", { onClick: props.onClick, className: classNames('k-columnmenu-item', { 'k-selected': props.selected }, { 'k-disabled': props.disabled }) },
5
- props.iconClass && React.createElement("span", { className: "k-icon " + props.iconClass }),
5
+ props.iconClass && React.createElement("span", { className: "k-icon ".concat(props.iconClass) }),
6
6
  props.title));
7
7
  };
@@ -1,7 +1,11 @@
1
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
2
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
3
- to[j] = from[i];
4
- return to;
1
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
2
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
3
+ if (ar || !(i in from)) {
4
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
5
+ ar[i] = from[i];
6
+ }
7
+ }
8
+ return to.concat(ar || Array.prototype.slice.call(from));
5
9
  };
6
10
  import { columnMenuFilterEqOperator, columnMenuFilterNotEqOperator, columnMenuFilterIsNullOperator, columnMenuFilterIsNotNullOperator, columnMenuFilterIsEmptyOperator, columnMenuFilterIsNotEmptyOperator, columnMenuFilterStartsWithOperator, columnMenuFilterContainsOperator, columnMenuFilterNotContainsOperator, columnMenuFilterEndsWithOperator, columnMenuFilterGteOperator, columnMenuFilterGtOperator, columnMenuFilterLteOperator, columnMenuFilterLtOperator, columnMenuFilterAfterOrEqualOperator, columnMenuFilterAfterOperator, columnMenuFilterBeforeOperator, columnMenuFilterBeforeOrEqualOperator, columnMenuFilterIsTrue } from '../messages';
7
11
  var textOperators = [
@@ -67,7 +71,7 @@ var ColumnMenuOperators = /** @class */ (function () {
67
71
  * - { text: 'columnMenu.filterIsNotEmptyOperator', operator: 'isnotempty' }
68
72
  */
69
73
  get: function () {
70
- return __spreadArray([], textOperators);
74
+ return __spreadArray([], textOperators, true);
71
75
  },
72
76
  enumerable: false,
73
77
  configurable: true
@@ -88,7 +92,7 @@ var ColumnMenuOperators = /** @class */ (function () {
88
92
  * - { text: 'columnMenu.filterIsNotNullOperator', operator: 'isnotnull' }
89
93
  */
90
94
  get: function () {
91
- return __spreadArray([], numericOperators);
95
+ return __spreadArray([], numericOperators, true);
92
96
  },
93
97
  enumerable: false,
94
98
  configurable: true
@@ -109,7 +113,7 @@ var ColumnMenuOperators = /** @class */ (function () {
109
113
  * - { text: 'columnMenu.filterIsNotNullOperator', operator: 'isnotnull' }
110
114
  */
111
115
  get: function () {
112
- return __spreadArray([], dateOperators);
116
+ return __spreadArray([], dateOperators, true);
113
117
  },
114
118
  enumerable: false,
115
119
  configurable: true
@@ -123,7 +127,7 @@ var ColumnMenuOperators = /** @class */ (function () {
123
127
  * - { text: 'columnMenu.filterIsTrue', operator: '' }
124
128
  */
125
129
  get: function () {
126
- return __spreadArray([], booleanOperators);
130
+ return __spreadArray([], booleanOperators, true);
127
131
  },
128
132
  enumerable: false,
129
133
  configurable: true
@@ -7,6 +7,7 @@ export interface ColumnDraggableProps {
7
7
  dragHandler?: (draggableEvent: any, element: HTMLTableRowElement | HTMLDivElement) => void;
8
8
  releaseHandler?: (draggableEvent: any) => void;
9
9
  ariaRowIndex?: number;
10
+ children?: React.ReactNode;
10
11
  }
11
12
  /**
12
13
  * @hidden
@@ -22,6 +22,7 @@ var ColumnDraggable = /** @class */ (function (_super) {
22
22
  __extends(ColumnDraggable, _super);
23
23
  function ColumnDraggable() {
24
24
  var _this = _super !== null && _super.apply(this, arguments) || this;
25
+ _this.draggable = null;
25
26
  /**
26
27
  * @hidden
27
28
  */
@@ -1,8 +1,9 @@
1
- import { ExtendedColumnProps } from './../header';
1
+ import { FilterCellProps } from '../filteringCells';
2
+ import { ExtendedColumnProps, CellProps, HeaderCellProps } from './../header';
2
3
  /**
3
4
  * @hidden
4
5
  */
5
- export declare class ColumnResize {
6
+ export declare class ColumnResize<C = CellProps, H = HeaderCellProps, F = FilterCellProps> {
6
7
  /**
7
8
  * The main `colgroup` of the Grid.
8
9
  */
@@ -15,7 +16,7 @@ export declare class ColumnResize {
15
16
  * The footer `colgroup` of the Grid (if any).
16
17
  */
17
18
  colGroupFooter: any | null;
18
- columns: ExtendedColumnProps[];
19
+ columns: ExtendedColumnProps<C, H, F>[];
19
20
  /**
20
21
  * The settings for resizing the Grid.
21
22
  */
@@ -24,7 +25,7 @@ export declare class ColumnResize {
24
25
  private isRtl;
25
26
  constructor(triggerResize: (index: number, newWidth: number, oldWidth: number, originalEvent: any, end: boolean) => void);
26
27
  setIsRtl: (isRtl: boolean) => void;
27
- dragHandler(event: any, column: ExtendedColumnProps, dragCue: HTMLSpanElement, end: boolean): void;
28
+ dragHandler(event: any, column: ExtendedColumnProps<C, H, F>, dragCue: HTMLSpanElement, end: boolean): void;
28
29
  private setWidths;
29
30
  private updateColElements;
30
31
  private setColWidth;
@@ -4,6 +4,9 @@
4
4
  var ColumnResize = /** @class */ (function () {
5
5
  function ColumnResize(triggerResize) {
6
6
  var _this = this;
7
+ // Typings. `col` and `colgroup` do not differ, both represnt a `HTMLTableColElement`.
8
+ // Implemented as `any`.
9
+ this.columns = [];
7
10
  /**
8
11
  * The settings for resizing the Grid.
9
12
  */
@@ -22,6 +22,7 @@ var ColumnResizer = /** @class */ (function (_super) {
22
22
  __extends(ColumnResizer, _super);
23
23
  function ColumnResizer() {
24
24
  var _this = _super !== null && _super.apply(this, arguments) || this;
25
+ _this.draggable = null;
25
26
  /**
26
27
  * @hidden
27
28
  */
@@ -1,6 +1,7 @@
1
1
  import { DragClue } from './DragClue';
2
2
  import { DropClue } from './DropClue';
3
- import { ExtendedColumnProps } from './../header';
3
+ import { FilterCellProps } from '../filteringCells';
4
+ import { ExtendedColumnProps, CellProps, HeaderCellProps } from './../header';
4
5
  /**
5
6
  * @hidden
6
7
  */
@@ -8,8 +9,8 @@ export declare type handler = (prevIndex: number, nextIndex: number, nativeEvent
8
9
  /**
9
10
  * @hidden
10
11
  */
11
- export declare class CommonDragLogic {
12
- columns: ExtendedColumnProps[];
12
+ export declare class CommonDragLogic<C = CellProps, H = HeaderCellProps, F = FilterCellProps> {
13
+ columns: ExtendedColumnProps<C, H, F>[];
13
14
  reorderable: boolean;
14
15
  groupable: boolean;
15
16
  private startColumn;
@@ -5,6 +5,7 @@ import { getIndex } from './../header/';
5
5
  var CommonDragLogic = /** @class */ (function () {
6
6
  function CommonDragLogic(columnReorder, groupReorder, columnToGroup) {
7
7
  var _this = this;
8
+ this.columns = [];
8
9
  this.reorderable = false;
9
10
  this.groupable = false;
10
11
  this.startColumn = -1;
@@ -12,7 +12,7 @@ export interface DragClueState {
12
12
  /**
13
13
  * @hidden
14
14
  */
15
- export declare class DragClue extends React.PureComponent<{}, DragClueState> {
15
+ export declare class DragClue extends React.PureComponent<any, DragClueState> {
16
16
  private elementRef;
17
17
  readonly state: DragClueState;
18
18
  hiddenElementRef: React.RefObject<HTMLDivElement>;
@@ -11,7 +11,7 @@ export interface DropClueState {
11
11
  /**
12
12
  * @hidden
13
13
  */
14
- export declare class DropClue extends React.PureComponent<{}, DropClueState> {
14
+ export declare class DropClue extends React.PureComponent<any, DropClueState> {
15
15
  readonly state: DropClueState;
16
16
  hiddenElementRef: React.RefObject<HTMLDivElement>;
17
17
  constructor(props: any);
@@ -51,7 +51,7 @@ export declare class Filter extends React.Component<FilterProps> {
51
51
  static propTypes: {
52
52
  className: PropTypes.Requireable<string>;
53
53
  style: PropTypes.Requireable<object>;
54
- fields: (props: FilterProps, propName: string) => Error;
54
+ fields: (props: FilterProps, propName: string) => Error | null;
55
55
  value: PropTypes.Validator<object>;
56
56
  onChange: PropTypes.Validator<(...args: any[]) => any>;
57
57
  };
@@ -75,16 +75,16 @@ var Filter = /** @class */ (function (_super) {
75
75
  fields: function (props, propName) {
76
76
  var prop = props[propName];
77
77
  if (prop === undefined) {
78
- return new Error("Property '" + propName + "' is missing.");
78
+ return new Error("Property '".concat(propName, "' is missing."));
79
79
  }
80
80
  else if (!Array.isArray(prop)) {
81
- return new Error("Property '" + propName + "' needs to be Array<FieldSettings>.");
81
+ return new Error("Property '".concat(propName, "' needs to be Array<FieldSettings>."));
82
82
  }
83
83
  else if (Object.keys(prop.reduce(function (acc, cur) {
84
84
  var _a;
85
85
  return (__assign(__assign({}, acc), (_a = {}, _a[cur.name] = 1, _a)));
86
86
  }, {})).length !== prop.length) {
87
- return new Error("Property '" + propName + "' needs to contain objects with unique 'name' field.");
87
+ return new Error("Property '".concat(propName, "' needs to contain objects with unique 'name' field."));
88
88
  }
89
89
  return null;
90
90
  },
@@ -24,10 +24,14 @@ var __assign = (this && this.__assign) || function () {
24
24
  };
25
25
  return __assign.apply(this, arguments);
26
26
  };
27
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
28
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
29
- to[j] = from[i];
30
- return to;
27
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
28
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
29
+ if (ar || !(i in from)) {
30
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
31
+ ar[i] = from[i];
32
+ }
33
+ }
34
+ return to.concat(ar || Array.prototype.slice.call(from));
31
35
  };
32
36
  import * as React from 'react';
33
37
  import * as PropTypes from 'prop-types';
@@ -44,37 +48,53 @@ var Group = /** @class */ (function (_super) {
44
48
  __extends(Group, _super);
45
49
  function Group() {
46
50
  var _this = _super !== null && _super.apply(this, arguments) || this;
47
- _this.onGroupRemove = function () {
48
- _this.props.onRemove.call(undefined, {
49
- filter: _this.props.filter
50
- });
51
+ _this.onGroupRemove = function (event) {
52
+ var ev = {
53
+ filter: _this.props.filter,
54
+ target: _this,
55
+ syntheticEvent: event,
56
+ nativeEvent: event.nativeEvent
57
+ };
58
+ _this.props.onRemove.call(undefined, ev);
51
59
  };
52
- _this.onAddExpression = function () {
60
+ _this.onAddExpression = function (event) {
53
61
  var prevFilter = _this.props.filter;
54
62
  var firstField = _this.props.fields[0];
55
63
  var newExpression = { field: firstField.name, operator: firstField.operators[0].operator };
56
64
  newExpression.value = stringOperator(newExpression.operator) ? '' : null;
57
- _this.props.onChange.call(undefined, {
58
- nextFilter: __assign(__assign({}, prevFilter), { filters: __spreadArray(__spreadArray([], prevFilter.filters), [newExpression]) }),
59
- prevFilter: prevFilter
60
- });
65
+ var ev = {
66
+ nextFilter: __assign(__assign({}, prevFilter), { filters: __spreadArray(__spreadArray([], prevFilter.filters, true), [newExpression], false) }),
67
+ prevFilter: prevFilter,
68
+ target: _this,
69
+ syntheticEvent: event,
70
+ nativeEvent: event.nativeEvent
71
+ };
72
+ _this.props.onChange.call(undefined, ev);
61
73
  };
62
- _this.onAddGroup = function () {
74
+ _this.onAddGroup = function (event) {
63
75
  var prevFilter = _this.props.filter;
64
- _this.props.onChange.call(undefined, {
65
- nextFilter: __assign(__assign({}, prevFilter), { filters: __spreadArray(__spreadArray([], prevFilter.filters), [__assign({}, _this.props.defaultGroupFilter)]) }),
66
- prevFilter: prevFilter
67
- });
76
+ var ev = {
77
+ nextFilter: __assign(__assign({}, prevFilter), { filters: __spreadArray(__spreadArray([], prevFilter.filters, true), [__assign({}, _this.props.defaultGroupFilter)], false) }),
78
+ prevFilter: prevFilter,
79
+ target: _this,
80
+ syntheticEvent: event,
81
+ nativeEvent: event.nativeEvent
82
+ };
83
+ _this.props.onChange.call(undefined, ev);
68
84
  };
69
- _this.onLogicAnd = function () { return _this.changeLogic('and'); };
70
- _this.onLogicOr = function () { return _this.changeLogic('or'); };
71
- _this.changeLogic = function (logic) {
85
+ _this.onLogicAnd = function (event) { return _this.changeLogic('and', event); };
86
+ _this.onLogicOr = function (event) { return _this.changeLogic('or', event); };
87
+ _this.changeLogic = function (logic, event) {
72
88
  var prevFilter = _this.props.filter;
73
89
  if (prevFilter.logic !== logic) {
74
- _this.props.onChange.call(undefined, {
90
+ var ev = {
75
91
  nextFilter: __assign(__assign({}, prevFilter), { logic: logic }),
76
- prevFilter: prevFilter
77
- });
92
+ prevFilter: prevFilter,
93
+ target: _this,
94
+ syntheticEvent: event,
95
+ nativeEvent: event.nativeEvent
96
+ };
97
+ _this.props.onChange.call(undefined, ev);
78
98
  }
79
99
  };
80
100
  _this.replaceFilter = function (prevFilter, nextFilter) {
@@ -28,10 +28,10 @@ export declare class BooleanFilter extends React.Component<BooleanFilterProps> {
28
28
  static propTypes: {
29
29
  filter: PropTypes.Validator<object>;
30
30
  onFilterChange: PropTypes.Validator<(...args: any[]) => any>;
31
- data: PropTypes.Requireable<PropTypes.InferProps<{
31
+ data: PropTypes.Requireable<(PropTypes.InferProps<{
32
32
  text: PropTypes.Requireable<string>;
33
33
  value: PropTypes.Requireable<any>;
34
- }>[]>;
34
+ }> | null | undefined)[]>;
35
35
  defaultItem: PropTypes.Requireable<any>;
36
36
  };
37
37
  private data;
@@ -28,10 +28,10 @@ export declare class EnumFilter extends React.Component<EnumFilterProps> {
28
28
  static propTypes: {
29
29
  filter: PropTypes.Validator<object>;
30
30
  onFilterChange: PropTypes.Validator<(...args: any[]) => any>;
31
- data: PropTypes.Requireable<PropTypes.InferProps<{
31
+ data: PropTypes.Requireable<(PropTypes.InferProps<{
32
32
  text: PropTypes.Requireable<string>;
33
33
  value: PropTypes.Requireable<any>;
34
- }>[]>;
34
+ }> | null | undefined)[]>;
35
35
  defaultItem: PropTypes.Requireable<any>;
36
36
  };
37
37
  /**
@@ -1,6 +1,5 @@
1
1
  import * as React from 'react';
2
2
  import * as PropTypes from 'prop-types';
3
- import { FilterOperator } from '../../filteringCells';
4
3
  import { FilterDescriptor } from '@progress/kendo-data-query';
5
4
  /**
6
5
  * The props of the TextFilter component.
@@ -14,7 +13,7 @@ export interface TextFilterProps {
14
13
  * The FilterChange event, triggered while editing the FilterOperator.
15
14
  */
16
15
  onFilterChange: (event: {
17
- nextFilter: FilterOperator;
16
+ nextFilter: FilterDescriptor;
18
17
  }) => void;
19
18
  }
20
19
  /**
@@ -1,7 +1,11 @@
1
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
2
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
3
- to[j] = from[i];
4
- return to;
1
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
2
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
3
+ if (ar || !(i in from)) {
4
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
5
+ ar[i] = from[i];
6
+ }
7
+ }
8
+ return to.concat(ar || Array.prototype.slice.call(from));
5
9
  };
6
10
  import { filterEqOperator, filterNotEqOperator, filterIsNullOperator, filterIsNotNullOperator, filterIsEmptyOperator, filterIsNotEmptyOperator, filterStartsWithOperator, filterContainsOperator, filterNotContainsOperator, filterEndsWithOperator, filterGteOperator, filterGtOperator, filterLteOperator, filterLtOperator, filterAfterOrEqualOperator, filterAfterOperator, filterBeforeOperator, filterBeforeOrEqualOperator } from './../messages';
7
11
  var textOperators = [
@@ -67,7 +71,7 @@ var Operators = /** @class */ (function () {
67
71
  * - { text: 'filter.isNotEmptyOperator', operator: 'isnotempty' }
68
72
  */
69
73
  get: function () {
70
- return __spreadArray([], textOperators);
74
+ return __spreadArray([], textOperators, true);
71
75
  },
72
76
  enumerable: false,
73
77
  configurable: true
@@ -88,7 +92,7 @@ var Operators = /** @class */ (function () {
88
92
  * - { text: 'filter.isNotNullOperator', operator: 'isnotnull' }
89
93
  */
90
94
  get: function () {
91
- return __spreadArray([], numericOperators);
95
+ return __spreadArray([], numericOperators, true);
92
96
  },
93
97
  enumerable: false,
94
98
  configurable: true
@@ -109,7 +113,7 @@ var Operators = /** @class */ (function () {
109
113
  * - { text: 'filter.isNotNullOperator', operator: 'isnotnull' }
110
114
  */
111
115
  get: function () {
112
- return __spreadArray([], dateOperators);
116
+ return __spreadArray([], dateOperators, true);
113
117
  },
114
118
  enumerable: false,
115
119
  configurable: true
@@ -124,7 +128,7 @@ var Operators = /** @class */ (function () {
124
128
  * - { text: 'filter.notEqOperator', operator: 'neq' }
125
129
  */
126
130
  get: function () {
127
- return __spreadArray([], booleanOperators);
131
+ return __spreadArray([], booleanOperators, true);
128
132
  },
129
133
  enumerable: false,
130
134
  configurable: true
@@ -24,10 +24,14 @@ var __assign = (this && this.__assign) || function () {
24
24
  };
25
25
  return __assign.apply(this, arguments);
26
26
  };
27
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
28
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
29
- to[j] = from[i];
30
- return to;
27
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
28
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
29
+ if (ar || !(i in from)) {
30
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
31
+ ar[i] = from[i];
32
+ }
33
+ }
34
+ return to.concat(ar || Array.prototype.slice.call(from));
31
35
  };
32
36
  import * as React from 'react';
33
37
  import { createFilterComponent } from './FilterComponent';
@@ -55,7 +59,7 @@ var settings = {
55
59
  return;
56
60
  }
57
61
  var filterResult = current ?
58
- filter.map(function (f) { return f.field === field ? __assign(__assign({}, current), { value: value }) : f; }) : __spreadArray(__spreadArray([], filter), [{ value: value, field: field, operator: booleanOperator }]);
62
+ filter.map(function (f) { return f.field === field ? __assign(__assign({}, current), { value: value }) : f; }) : __spreadArray(__spreadArray([], filter, true), [{ value: value, field: field, operator: booleanOperator }], false);
59
63
  cellProps.onFilterChange.call(undefined, {
60
64
  filter: filterResult,
61
65
  field: field,
@@ -24,10 +24,14 @@ var __assign = (this && this.__assign) || function () {
24
24
  };
25
25
  return __assign.apply(this, arguments);
26
26
  };
27
- var __spreadArray = (this && this.__spreadArray) || function (to, from) {
28
- for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
29
- to[j] = from[i];
30
- return to;
27
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
28
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
29
+ if (ar || !(i in from)) {
30
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
31
+ ar[i] = from[i];
32
+ }
33
+ }
34
+ return to.concat(ar || Array.prototype.slice.call(from));
31
35
  };
32
36
  import * as React from 'react';
33
37
  import { Button } from '@progress/kendo-react-buttons';
@@ -50,7 +54,7 @@ export var createFilterComponent = function (settings) {
50
54
  var _a = _this.props, _b = _a.filter, filter = _b === void 0 ? [] : _b, _c = _a.field, field = _c === void 0 ? '' : _c;
51
55
  var existing = _this.findCellFilter();
52
56
  var filterResult = existing ?
53
- filter.map(function (f) { return f.field === field ? __assign(__assign({}, existing), { value: value }) : f; }) : __spreadArray(__spreadArray([], filter), [__assign(__assign({}, settings.emptyFilter), { value: value, field: field })]);
57
+ filter.map(function (f) { return f.field === field ? __assign(__assign({}, existing), { value: value }) : f; }) : __spreadArray(__spreadArray([], filter, true), [__assign(__assign({}, settings.emptyFilter), { value: value, field: field })], false);
54
58
  _this.filterChange({
55
59
  filter: filterResult,
56
60
  field: field,
@@ -62,7 +66,7 @@ export var createFilterComponent = function (settings) {
62
66
  var _a = _this.props, _b = _a.filter, filter = _b === void 0 ? [] : _b, _c = _a.field, field = _c === void 0 ? '' : _c;
63
67
  var existing = _this.findCellFilter();
64
68
  var filterResult = existing ?
65
- filter.map(function (f) { return f.field === field ? __assign(__assign({}, existing), { operator: operator }) : f; }) : __spreadArray(__spreadArray([], filter), [__assign(__assign({}, settings.emptyFilter), { field: field, operator: operator })]);
69
+ filter.map(function (f) { return f.field === field ? __assign(__assign({}, existing), { operator: operator }) : f; }) : __spreadArray(__spreadArray([], filter, true), [__assign(__assign({}, settings.emptyFilter), { field: field, operator: operator })], false);
66
70
  _this.filterChange({
67
71
  filter: filterResult,
68
72
  field: field,
@@ -1,13 +1,13 @@
1
1
  import { ComponentType } from 'react';
2
- import { HeaderCellProps } from './HeaderCell';
3
- import { CellProps } from './CellProps';
4
- import { FilterCellProps } from '../filteringCells/FilterCellProps';
2
+ import { HeaderCellProps as HeaderCellPropsDefault } from './HeaderCell';
3
+ import { CellProps as CellPropsDefault } from './CellProps';
4
+ import { FilterCellProps as FilterCellPropsDefault } from '../filteringCells/FilterCellProps';
5
5
  import { ColumnSortSettings } from './SortSettings';
6
6
  import { ColumnMenuProps } from '../columnmenu';
7
7
  /**
8
8
  * @hidden
9
9
  */
10
- export interface ColumnBaseProps {
10
+ export interface ColumnBaseProps<CellProps = CellPropsDefault> {
11
11
  /**
12
12
  * The field to which the column is bound.
13
13
  */
@@ -86,11 +86,11 @@ export interface ColumnBaseProps {
86
86
  /**
87
87
  * @hidden
88
88
  */
89
- export interface TreeColumnBaseProps extends ColumnBaseProps {
89
+ export interface TreeColumnBaseProps<CellProps = CellPropsDefault, HeaderCellProps = HeaderCellPropsDefault, FilterCellProps = FilterCellPropsDefault> extends ColumnBaseProps<CellProps> {
90
90
  /**
91
91
  * A collection of child columns.
92
92
  */
93
- children?: TreeColumnBaseProps[];
93
+ children?: TreeColumnBaseProps<CellProps, HeaderCellProps, FilterCellProps>[];
94
94
  /**
95
95
  * The column menu component. Pass the [ColumnMenuTextColumn]({% slug api_data-tools_columnmenutextcolumn %}),
96
96
  * [ColumnMenuNumericColumn]({% slug api_data-tools_columnmenunumericcolumn %}),
@@ -124,7 +124,7 @@ export interface TreeColumnBaseProps extends ColumnBaseProps {
124
124
  /**
125
125
  * @hidden
126
126
  */
127
- export interface ExtendedColumnProps extends TreeColumnBaseProps {
127
+ export interface ExtendedColumnProps<CellProps = CellPropsDefault, HeaderCellProps = HeaderCellPropsDefault, FilterCellProps = FilterCellPropsDefault> extends TreeColumnBaseProps<CellProps, HeaderCellProps, FilterCellProps> {
128
128
  declarationIndex: number;
129
129
  parentIndex: number;
130
130
  colSpan: number;
@@ -132,7 +132,7 @@ export interface ExtendedColumnProps extends TreeColumnBaseProps {
132
132
  depth: number;
133
133
  kFirst?: boolean;
134
134
  index: number;
135
- children: ExtendedColumnProps[];
135
+ children: ExtendedColumnProps<CellProps, HeaderCellProps, FilterCellProps>[];
136
136
  left: number;
137
137
  right: number;
138
138
  rightBorder: boolean;
@@ -8,7 +8,7 @@ import { filterAriaLabel, messages } from '../messages';
8
8
  */
9
9
  export var FILTER_ROW_CLASS = 'k-filter-row';
10
10
  var headerCellClassName = function (sort, field, locked) {
11
- var result = "" + (locked ? 'k-grid-header-sticky' : '');
11
+ var result = "".concat(locked ? 'k-grid-header-sticky' : '');
12
12
  if (sort.some(function (descriptor) { return descriptor.field === field; })) {
13
13
  result += ' k-sorted';
14
14
  }
@@ -44,4 +44,4 @@ export interface HeaderCellProps extends HeaderCellBaseProps {
44
44
  /**
45
45
  * @hidden
46
46
  */
47
- export declare function HeaderCell(props: HeaderCellProps): any;
47
+ export declare function HeaderCell(props: HeaderCellProps): JSX.Element;
@@ -20,7 +20,7 @@ export function HeaderCell(props) {
20
20
  var defaultRendering = (React.createElement("span", __assign({ className: 'k-link' }, clickProps),
21
21
  React.createElement("span", { className: 'k-column-title' }, props.title || props.field || '\u00A0'),
22
22
  props.children));
23
- return props.render ?
23
+ return (React.createElement(React.Fragment, null, props.render ?
24
24
  props.render.call(undefined, defaultRendering, props) :
25
- defaultRendering;
25
+ defaultRendering));
26
26
  }