@progress/kendo-react-pivotgrid 6.1.1 → 7.0.0-develop.10
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/LICENSE.md +1 -1
- package/{dist/npm/PivotGrid.d.ts → PivotGrid.d.ts} +4 -0
- package/{dist/es/components → components}/AxesEditor.d.ts +4 -6
- package/{dist/npm/components → components}/AxisEditor.d.ts +4 -0
- package/{dist/es/components → components}/AxisFilterFieldsEditor.d.ts +4 -0
- package/{dist/npm/components → components}/Cell.d.ts +4 -0
- package/{dist/es/components → components}/Column.d.ts +4 -0
- package/{dist/npm/components → components}/Configurator.d.ts +4 -0
- package/{dist/npm/components → components}/ConfiguratorButton.d.ts +4 -0
- package/{dist/es/components → components}/ConfiguratorEditor.d.ts +4 -0
- package/{dist/es/components → components}/Container.d.ts +4 -0
- package/components/EditorContext.d.ts +11 -0
- package/{dist/npm/components → components}/FieldsEditor.d.ts +4 -0
- package/{dist/es/components → components}/HeaderCell.d.ts +4 -0
- package/{dist/es/components → components}/Row.d.ts +4 -0
- package/dist/cdn/js/kendo-react-pivotgrid.js +5 -2
- package/hooks/index.d.ts +6 -0
- package/{dist/es/hooks → hooks}/useExpansion.d.ts +5 -1
- package/{dist/es/hooks → hooks}/useHeaders.d.ts +5 -1
- package/hooks/useHorizontalScrollSync.d.ts +9 -0
- package/{dist/es/hooks → hooks}/usePivotConfiguratorEditor.d.ts +5 -1
- package/{dist/npm/hooks → hooks}/usePivotLocalDataService.d.ts +4 -0
- package/{dist/npm/hooks → hooks}/usePivotOLAPService.d.ts +4 -0
- package/hooks/useVerticalScrollSync.d.ts +9 -0
- package/index.d.ts +22 -0
- package/index.js +5 -0
- package/index.mjs +1585 -0
- package/{dist/es/messages → messages}/index.d.ts +4 -0
- package/{dist/es/models → models}/index.d.ts +4 -1
- package/package-metadata.d.ts +9 -0
- package/package.json +36 -54
- package/{dist/es/shared → shared}/PivotGridConfiguratorEditorEventsContext.d.ts +4 -0
- package/{dist/npm/shared → shared}/PivotGridConfiguratorEditorStateContext.d.ts +4 -0
- package/shared/index.d.ts +6 -0
- package/{dist/es/utils → utils}/index.d.ts +4 -0
- package/about.md +0 -3
- package/dist/cdn/js/kendo-react-pivotgrid.js.LICENSE.txt +0 -14
- package/dist/es/PivotGrid.d.ts +0 -177
- package/dist/es/PivotGrid.js +0 -245
- package/dist/es/components/AxesEditor.js +0 -43
- package/dist/es/components/AxisEditor.d.ts +0 -52
- package/dist/es/components/AxisEditor.js +0 -138
- package/dist/es/components/AxisFilterFieldsEditor.js +0 -150
- package/dist/es/components/Cell.d.ts +0 -65
- package/dist/es/components/Cell.js +0 -31
- package/dist/es/components/Column.js +0 -33
- package/dist/es/components/Configurator.d.ts +0 -125
- package/dist/es/components/Configurator.js +0 -118
- package/dist/es/components/ConfiguratorButton.d.ts +0 -40
- package/dist/es/components/ConfiguratorButton.js +0 -39
- package/dist/es/components/ConfiguratorEditor.js +0 -191
- package/dist/es/components/Container.js +0 -22
- package/dist/es/components/FieldsEditor.d.ts +0 -74
- package/dist/es/components/FieldsEditor.js +0 -90
- package/dist/es/components/HeaderCell.js +0 -50
- package/dist/es/components/Row.js +0 -28
- package/dist/es/hooks/index.d.ts +0 -2
- package/dist/es/hooks/index.js +0 -2
- package/dist/es/hooks/useExpansion.js +0 -89
- package/dist/es/hooks/useHeaders.js +0 -25
- package/dist/es/hooks/useHorizontalScrollSync.d.ts +0 -5
- package/dist/es/hooks/useHorizontalScrollSync.js +0 -27
- package/dist/es/hooks/usePivotConfiguratorEditor.js +0 -103
- package/dist/es/hooks/usePivotLocalDataService.d.ts +0 -79
- package/dist/es/hooks/usePivotLocalDataService.js +0 -105
- package/dist/es/hooks/usePivotOLAPService.d.ts +0 -41
- package/dist/es/hooks/usePivotOLAPService.js +0 -371
- package/dist/es/hooks/useVerticalScrollSync.d.ts +0 -5
- package/dist/es/hooks/useVerticalScrollSync.js +0 -27
- package/dist/es/main.d.ts +0 -18
- package/dist/es/main.js +0 -17
- package/dist/es/messages/index.js +0 -71
- package/dist/es/models/index.js +0 -1
- package/dist/es/package-metadata.d.ts +0 -5
- package/dist/es/package-metadata.js +0 -11
- package/dist/es/shared/PivotGridConfiguratorEditorEventsContext.js +0 -5
- package/dist/es/shared/PivotGridConfiguratorEditorStateContext.d.ts +0 -6
- package/dist/es/shared/PivotGridConfiguratorEditorStateContext.js +0 -18
- package/dist/es/shared/index.d.ts +0 -2
- package/dist/es/shared/index.js +0 -2
- package/dist/es/utils/index.js +0 -118
- package/dist/npm/PivotGrid.js +0 -248
- package/dist/npm/components/AxesEditor.d.ts +0 -46
- package/dist/npm/components/AxesEditor.js +0 -46
- package/dist/npm/components/AxisEditor.js +0 -141
- package/dist/npm/components/AxisFilterFieldsEditor.d.ts +0 -114
- package/dist/npm/components/AxisFilterFieldsEditor.js +0 -153
- package/dist/npm/components/Cell.js +0 -34
- package/dist/npm/components/Column.d.ts +0 -42
- package/dist/npm/components/Column.js +0 -36
- package/dist/npm/components/Configurator.js +0 -121
- package/dist/npm/components/ConfiguratorButton.js +0 -42
- package/dist/npm/components/ConfiguratorEditor.d.ts +0 -126
- package/dist/npm/components/ConfiguratorEditor.js +0 -194
- package/dist/npm/components/Container.d.ts +0 -46
- package/dist/npm/components/Container.js +0 -25
- package/dist/npm/components/FieldsEditor.js +0 -93
- package/dist/npm/components/HeaderCell.d.ts +0 -96
- package/dist/npm/components/HeaderCell.js +0 -53
- package/dist/npm/components/Row.d.ts +0 -50
- package/dist/npm/components/Row.js +0 -31
- package/dist/npm/hooks/index.d.ts +0 -2
- package/dist/npm/hooks/index.js +0 -18
- package/dist/npm/hooks/useExpansion.d.ts +0 -19
- package/dist/npm/hooks/useExpansion.js +0 -93
- package/dist/npm/hooks/useHeaders.d.ts +0 -12
- package/dist/npm/hooks/useHeaders.js +0 -30
- package/dist/npm/hooks/useHorizontalScrollSync.d.ts +0 -5
- package/dist/npm/hooks/useHorizontalScrollSync.js +0 -31
- package/dist/npm/hooks/usePivotConfiguratorEditor.d.ts +0 -83
- package/dist/npm/hooks/usePivotConfiguratorEditor.js +0 -107
- package/dist/npm/hooks/usePivotLocalDataService.js +0 -110
- package/dist/npm/hooks/usePivotOLAPService.js +0 -376
- package/dist/npm/hooks/useVerticalScrollSync.d.ts +0 -5
- package/dist/npm/hooks/useVerticalScrollSync.js +0 -31
- package/dist/npm/main.d.ts +0 -18
- package/dist/npm/main.js +0 -43
- package/dist/npm/messages/index.d.ts +0 -70
- package/dist/npm/messages/index.js +0 -74
- package/dist/npm/models/index.d.ts +0 -45
- package/dist/npm/models/index.js +0 -2
- package/dist/npm/package-metadata.d.ts +0 -5
- package/dist/npm/package-metadata.js +0 -14
- package/dist/npm/shared/PivotGridConfiguratorEditorEventsContext.d.ts +0 -13
- package/dist/npm/shared/PivotGridConfiguratorEditorEventsContext.js +0 -8
- package/dist/npm/shared/PivotGridConfiguratorEditorStateContext.js +0 -21
- package/dist/npm/shared/index.d.ts +0 -2
- package/dist/npm/shared/index.js +0 -18
- package/dist/npm/utils/index.d.ts +0 -47
- package/dist/npm/utils/index.js +0 -130
- package/dist/systemjs/kendo-react-pivotgrid.js +0 -1
- package/e2e-next/basic.tests.ts +0 -24
package/dist/es/utils/index.js
DELETED
|
@@ -1,118 +0,0 @@
|
|
|
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));
|
|
9
|
-
};
|
|
10
|
-
import { toColumns, toData, toRows, toTree } from '@progress/kendo-pivotgrid-common';
|
|
11
|
-
/**
|
|
12
|
-
* Generates suitable data for Charting visualization.
|
|
13
|
-
*
|
|
14
|
-
* @param rows - The PivotGrid's rows prop.
|
|
15
|
-
* @param columns - The PivotGrid's columns prop.
|
|
16
|
-
* @param data - The PivotGrid's data prop.
|
|
17
|
-
* @returns - Suitable data for Charting visualization.
|
|
18
|
-
*/
|
|
19
|
-
export var dataCells = function (rows, columns, data) {
|
|
20
|
-
var pRows = JSON.parse(JSON.stringify(rows || []));
|
|
21
|
-
var pColumns = JSON.parse(JSON.stringify(columns || []));
|
|
22
|
-
var pData = JSON.parse(JSON.stringify(data || []));
|
|
23
|
-
var rowsTree = toTree(pRows);
|
|
24
|
-
var _a = toRows(rowsTree), rowHeaderLeafs = _a[1], rowHeaderDepth = _a[2];
|
|
25
|
-
var columnsTree = toTree(pColumns);
|
|
26
|
-
var _b = toColumns(columnsTree), columnHeaderLeafs = _b[1], columnHeaderBreadth = _b[3];
|
|
27
|
-
return toData(pData, columnHeaderLeafs, rowHeaderLeafs, columnHeaderBreadth, rowHeaderDepth);
|
|
28
|
-
};
|
|
29
|
-
/**
|
|
30
|
-
* @hidden
|
|
31
|
-
*/
|
|
32
|
-
export var recursiveMap = function (nodes, map, parent) {
|
|
33
|
-
if (nodes === void 0) { nodes = []; }
|
|
34
|
-
if (map === void 0) { map = {}; }
|
|
35
|
-
if (parent === void 0) { parent = null; }
|
|
36
|
-
return nodes.map(function (node) {
|
|
37
|
-
var result = { dataItem: node };
|
|
38
|
-
Object.keys(map).forEach(function (key) {
|
|
39
|
-
result[key] = map[key](result, parent);
|
|
40
|
-
});
|
|
41
|
-
return result;
|
|
42
|
-
});
|
|
43
|
-
};
|
|
44
|
-
/**
|
|
45
|
-
* @hidden
|
|
46
|
-
*/
|
|
47
|
-
export var flatMap = function (nodes) {
|
|
48
|
-
if (nodes === void 0) { nodes = []; }
|
|
49
|
-
var result = __spreadArray([], nodes, true);
|
|
50
|
-
(nodes || []).forEach(function (child) {
|
|
51
|
-
result = result.concat(flatMap(child.children));
|
|
52
|
-
});
|
|
53
|
-
return result;
|
|
54
|
-
};
|
|
55
|
-
/**
|
|
56
|
-
* @hidden
|
|
57
|
-
*/
|
|
58
|
-
export var extractDefaultFields = function (columns) {
|
|
59
|
-
if (columns === void 0) { columns = []; }
|
|
60
|
-
var result = new Set();
|
|
61
|
-
columns.forEach(function (column) {
|
|
62
|
-
result.add(String(column.name));
|
|
63
|
-
});
|
|
64
|
-
return Array.from(result);
|
|
65
|
-
};
|
|
66
|
-
/**
|
|
67
|
-
* @hidden
|
|
68
|
-
*/
|
|
69
|
-
export var generateKey = function (args) {
|
|
70
|
-
if (args === void 0) { args = []; }
|
|
71
|
-
return "".concat(args.join(','));
|
|
72
|
-
};
|
|
73
|
-
/**
|
|
74
|
-
* @hidden
|
|
75
|
-
*/
|
|
76
|
-
export var generateDataKey = function (rows, columns) { return "".concat(generateKey(rows.map(function (m) { return m.name; })), "|").concat(generateKey(columns.map(function (m) { return m.name; }))); };
|
|
77
|
-
/**
|
|
78
|
-
* @hidden
|
|
79
|
-
*/
|
|
80
|
-
export var findFilter = function (filter, member, operator) {
|
|
81
|
-
if (!filter) {
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
var idx = 0;
|
|
85
|
-
var result;
|
|
86
|
-
var length = filter.length;
|
|
87
|
-
var filterOperator;
|
|
88
|
-
for (; idx < length; idx++) {
|
|
89
|
-
filterOperator = filter[idx].operator;
|
|
90
|
-
if (((!operator && filterOperator !== 'in') || (filterOperator === operator)) && filter[idx].field === member) {
|
|
91
|
-
result = (filter[idx]);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
return result;
|
|
95
|
-
};
|
|
96
|
-
/**
|
|
97
|
-
* @hidden
|
|
98
|
-
*/
|
|
99
|
-
export var findFilters = function (filter, member, operator) {
|
|
100
|
-
if (!filter) {
|
|
101
|
-
return [];
|
|
102
|
-
}
|
|
103
|
-
var idx = 0;
|
|
104
|
-
var result = [];
|
|
105
|
-
var length = filter.length;
|
|
106
|
-
var filterOperator;
|
|
107
|
-
for (; idx < length; idx++) {
|
|
108
|
-
filterOperator = filter[idx].operator;
|
|
109
|
-
if (((!operator && filterOperator !== 'in') || (filterOperator === operator)) && filter[idx].field === member) {
|
|
110
|
-
result.push(filter[idx]);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
return result;
|
|
114
|
-
};
|
|
115
|
-
/**
|
|
116
|
-
* @hidden
|
|
117
|
-
*/
|
|
118
|
-
export var compareFields = function (a, b) { return a.uniqueName === b.uniqueName; };
|
package/dist/npm/PivotGrid.js
DELETED
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.PivotGrid = void 0;
|
|
15
|
-
var React = require("react");
|
|
16
|
-
var kendo_react_common_1 = require("@progress/kendo-react-common");
|
|
17
|
-
var package_metadata_1 = require("./package-metadata");
|
|
18
|
-
var kendo_react_intl_1 = require("@progress/kendo-react-intl");
|
|
19
|
-
var messages_1 = require("./messages");
|
|
20
|
-
var Row_1 = require("./components/Row");
|
|
21
|
-
var Cell_1 = require("./components/Cell");
|
|
22
|
-
var useHeaders_1 = require("./hooks/useHeaders");
|
|
23
|
-
var HeaderCell_1 = require("./components/HeaderCell");
|
|
24
|
-
var useHorizontalScrollSync_1 = require("./hooks/useHorizontalScrollSync");
|
|
25
|
-
var useVerticalScrollSync_1 = require("./hooks/useVerticalScrollSync");
|
|
26
|
-
var Column_1 = require("./components/Column");
|
|
27
|
-
var utils_1 = require("./utils");
|
|
28
|
-
var kendo_react_common_2 = require("@progress/kendo-react-common");
|
|
29
|
-
var kendo_pivotgrid_common_1 = require("@progress/kendo-pivotgrid-common");
|
|
30
|
-
/**
|
|
31
|
-
* Represents the [KendoReact PivotGrid component]({% slug api_pivotgrid_pivotgridprops %}).
|
|
32
|
-
*/
|
|
33
|
-
exports.PivotGrid = React.forwardRef(function (props, ref) {
|
|
34
|
-
(0, kendo_react_common_1.validatePackage)(package_metadata_1.packageMetadata);
|
|
35
|
-
var _a = __assign(__assign({}, defaultProps), props), rows = _a.rows, rowAxes = _a.rowAxes, columns = _a.columns, columnAxes = _a.columnAxes, data = _a.data;
|
|
36
|
-
var element = React.useRef(null);
|
|
37
|
-
var target = React.useRef(null);
|
|
38
|
-
var rowHeadersTable = React.useRef(null);
|
|
39
|
-
var columnHeadersTable = React.useRef(null);
|
|
40
|
-
var rowHeadersContainer = React.useRef(null);
|
|
41
|
-
var columnHeadersContainer = React.useRef(null);
|
|
42
|
-
var valuesHeadersContainer = React.useRef(null);
|
|
43
|
-
var localization = (0, kendo_react_intl_1.useLocalization)();
|
|
44
|
-
var handleRowAxesChange = function (newRowAxes, syntheticEvent) {
|
|
45
|
-
if (props.onRowAxesChange) {
|
|
46
|
-
props.onRowAxesChange({
|
|
47
|
-
value: newRowAxes,
|
|
48
|
-
target: target.current,
|
|
49
|
-
syntheticEvent: syntheticEvent
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
var handleColumnAxesChange = function (newRowAxes, syntheticEvent) {
|
|
54
|
-
if (props.onColumnAxesChange) {
|
|
55
|
-
props.onColumnAxesChange({
|
|
56
|
-
value: newRowAxes,
|
|
57
|
-
target: target.current,
|
|
58
|
-
syntheticEvent: syntheticEvent
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
var rowsTree = (0, kendo_pivotgrid_common_1.toTree)((rows || []).slice());
|
|
63
|
-
var _b = (0, useHeaders_1.useHeaders)((rowAxes || []).slice(), rowsTree, handleRowAxesChange), dispatchRows = _b[1];
|
|
64
|
-
var _c = (0, kendo_pivotgrid_common_1.toRows)(rowsTree), rowHeaderRows = _c[0], rowHeaderLeafs = _c[1], rowHeaderDepth = _c[2], rowHeaderBreadth = _c[3];
|
|
65
|
-
var columnsTree = (0, kendo_pivotgrid_common_1.toTree)((columns || []).slice());
|
|
66
|
-
var _d = (0, useHeaders_1.useHeaders)((columnAxes || []).slice(), columnsTree, handleColumnAxesChange), dispatchColumns = _d[1];
|
|
67
|
-
var _e = (0, kendo_pivotgrid_common_1.toColumns)(columnsTree), columnHeaderRows = _e[0], columnHeaderLeafs = _e[1], columnHeaderBreadth = _e[3];
|
|
68
|
-
var measures = (0, kendo_pivotgrid_common_1.toData)((data || []).slice(), columnHeaderLeafs, rowHeaderLeafs, columnHeaderBreadth, rowHeaderDepth);
|
|
69
|
-
React.useImperativeHandle(target, function () { return ({
|
|
70
|
-
props: props,
|
|
71
|
-
element: element.current,
|
|
72
|
-
columnHeaderRows: columnHeaderRows,
|
|
73
|
-
rowHeaderRows: rowHeaderRows,
|
|
74
|
-
dataCells: measures,
|
|
75
|
-
rowHeaderBreadth: rowHeaderBreadth,
|
|
76
|
-
columnHeaderBreadth: columnHeaderBreadth
|
|
77
|
-
}); });
|
|
78
|
-
React.useImperativeHandle(ref, function () { return target.current; });
|
|
79
|
-
var dataColumns = [];
|
|
80
|
-
var rowHeaderColumns = [];
|
|
81
|
-
var columnHeadersColumns = [];
|
|
82
|
-
/* Defaults */
|
|
83
|
-
var _f = (0, kendo_react_common_2.useCustomComponent)(props.row || defaultProps.row), RowComponent = _f[0], RowProps = _f[1];
|
|
84
|
-
var _g = (0, kendo_react_common_2.useCustomComponent)(props.column || defaultProps.column), ColumnComponent = _g[0], ColumnProps = _g[1];
|
|
85
|
-
var _h = (0, kendo_react_common_2.useCustomComponent)(props.cell || defaultProps.cell), CellComponent = _h[0], CellProps = _h[1];
|
|
86
|
-
var _j = (0, kendo_react_common_2.useCustomComponent)(props.headerCell || defaultProps.headerCell), HeaderCellComponent = _j[0], HeaderCellProps = _j[1];
|
|
87
|
-
/* Advanced */
|
|
88
|
-
var ColumnHeadersRowComponent = props.columnHeadersRow || RowComponent;
|
|
89
|
-
var ColumnHeadersColumnComponent = props.columnHeadersColumn || ColumnComponent;
|
|
90
|
-
var ColumnHeadersColumnCellComponent = props.columnHeadersCell || HeaderCellComponent;
|
|
91
|
-
var RowHeadersRowComponent = props.rowHeadersRow || RowComponent;
|
|
92
|
-
var RowHeadersColumnComponent = props.rowHeadersColumn || ColumnComponent;
|
|
93
|
-
var RowHeadersCellComponent = props.rowHeadersCell || HeaderCellComponent;
|
|
94
|
-
var DataRowComponent = props.dataRow || RowComponent;
|
|
95
|
-
var DataColumnComponent = props.dataColumn || ColumnComponent;
|
|
96
|
-
for (var i = 0; i < columnHeaderLeafs.length; i++) {
|
|
97
|
-
dataColumns.push(React.createElement(DataColumnComponent, __assign({ key: String(columnHeaderLeafs[i].path) }, ColumnProps, { path: columnHeaderLeafs[i].path })));
|
|
98
|
-
columnHeadersColumns.push(React.createElement(ColumnHeadersColumnComponent, __assign({ key: String(columnHeaderLeafs[i].path) }, ColumnProps, { path: columnHeaderLeafs[i].path })));
|
|
99
|
-
}
|
|
100
|
-
for (var i = 0; i < rowHeaderBreadth; i++) {
|
|
101
|
-
rowHeaderColumns.push(React.createElement(RowHeadersColumnComponent, __assign({ key: i }, ColumnProps)));
|
|
102
|
-
}
|
|
103
|
-
var handleColumnCellClick = function (event) {
|
|
104
|
-
if (event.target.props.expandable) {
|
|
105
|
-
dispatchColumns({
|
|
106
|
-
type: useHeaders_1.HEADERS_ACTION.toggle,
|
|
107
|
-
payload: event.target.props.dataItem.path
|
|
108
|
-
}, event.syntheticEvent);
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
var handleRowCellClick = function (event) {
|
|
112
|
-
if (event.target.props.expandable) {
|
|
113
|
-
dispatchRows({
|
|
114
|
-
type: useHeaders_1.HEADERS_ACTION.toggle,
|
|
115
|
-
payload: event.target.props.dataItem.path
|
|
116
|
-
}, event.syntheticEvent);
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
|
-
var handleHorizontalScroll = (0, useHorizontalScrollSync_1.useHorizontalScrollSync)(valuesHeadersContainer, columnHeadersContainer);
|
|
120
|
-
var handleVerticalScroll = (0, useVerticalScrollSync_1.useVerticalScrollSync)(valuesHeadersContainer, rowHeadersContainer);
|
|
121
|
-
var handleValuesContainerScroll = function (event) {
|
|
122
|
-
handleHorizontalScroll(event);
|
|
123
|
-
handleVerticalScroll(event);
|
|
124
|
-
};
|
|
125
|
-
var setRowsTemplate = React.useCallback(function () {
|
|
126
|
-
if (element.current && columnHeadersTable.current) {
|
|
127
|
-
// Reset gridTemplateRows before getting the new size
|
|
128
|
-
element.current.style.gridTemplateRows = '';
|
|
129
|
-
element.current.style.gridTemplateRows = "".concat(columnHeadersTable.current.offsetHeight, "px 1fr");
|
|
130
|
-
}
|
|
131
|
-
}, []);
|
|
132
|
-
var setColumnsTemplate = React.useCallback(function () {
|
|
133
|
-
if (element.current && rowHeadersTable.current) {
|
|
134
|
-
// Reset gridTemplateColumns before getting the new size
|
|
135
|
-
element.current.style.gridTemplateColumns = '';
|
|
136
|
-
element.current.style.gridTemplateColumns = "".concat(rowHeadersTable.current.offsetWidth, "px 1fr");
|
|
137
|
-
}
|
|
138
|
-
}, []);
|
|
139
|
-
var navigation = React.useRef(new kendo_pivotgrid_common_1.PivotGridNavigation({ tabIndex: props.tabIndex || 0 }));
|
|
140
|
-
React.useEffect(function () {
|
|
141
|
-
if (element.current) {
|
|
142
|
-
var tabIndex = props.tabIndex || 0;
|
|
143
|
-
navigation.current.stop();
|
|
144
|
-
navigation.current.tabIndex = tabIndex;
|
|
145
|
-
if (props.navigatable) {
|
|
146
|
-
navigation.current.start(element.current);
|
|
147
|
-
var firstCell = navigation.current.first;
|
|
148
|
-
if (firstCell) {
|
|
149
|
-
firstCell.setAttribute('tabindex', String(tabIndex));
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
return function () {
|
|
154
|
-
navigation.current.stop();
|
|
155
|
-
};
|
|
156
|
-
}, [props.tabIndex, props.navigatable]);
|
|
157
|
-
React.useEffect(function () {
|
|
158
|
-
navigation.current.update();
|
|
159
|
-
});
|
|
160
|
-
React.useEffect(function () {
|
|
161
|
-
if (columnHeadersTable.current) {
|
|
162
|
-
var observer_1 = new window.ResizeObserver(setRowsTemplate);
|
|
163
|
-
observer_1.observe(columnHeadersTable.current);
|
|
164
|
-
return function () { observer_1.disconnect(); };
|
|
165
|
-
}
|
|
166
|
-
}, [setRowsTemplate]);
|
|
167
|
-
React.useEffect(function () {
|
|
168
|
-
if (rowHeadersTable.current) {
|
|
169
|
-
var observer_2 = new window.ResizeObserver(setColumnsTemplate);
|
|
170
|
-
observer_2.observe(rowHeadersTable.current);
|
|
171
|
-
return function () { observer_2.disconnect(); };
|
|
172
|
-
}
|
|
173
|
-
}, [setColumnsTemplate]);
|
|
174
|
-
React.useLayoutEffect(function () {
|
|
175
|
-
(0, kendo_react_common_2.setScrollbarWidth)();
|
|
176
|
-
if (rowHeadersTable.current) {
|
|
177
|
-
var observer_3 = new window.ResizeObserver(kendo_react_common_2.setScrollbarWidth);
|
|
178
|
-
observer_3.observe(rowHeadersTable.current);
|
|
179
|
-
return function () { observer_3.disconnect(); };
|
|
180
|
-
}
|
|
181
|
-
}, []);
|
|
182
|
-
var columnHeaderCellsIds = new Array(columnHeaderRows.length).fill([]).map(function () { return new Array(columnHeaderLeafs.length); });
|
|
183
|
-
columnHeaderRows.forEach(function (row, r) {
|
|
184
|
-
var curColSpan = 0;
|
|
185
|
-
Array.from(row.cells).forEach(function (cell) {
|
|
186
|
-
var expanded = Boolean(cell && cell.children && cell.children.length);
|
|
187
|
-
var id = (cell ? (0, utils_1.generateKey)(cell.normalizedPath)
|
|
188
|
-
+ (cell.total ? '|[TOTAL]' : '')
|
|
189
|
-
+ (expanded ? '|[EXPANDED]' : '') : '').replace(/\s/g, '-');
|
|
190
|
-
if (cell) {
|
|
191
|
-
for (var colSp = 0; colSp < (cell.colSpan || 1); colSp++) {
|
|
192
|
-
for (var rowSp = 0; rowSp < (cell.rowSpan || 1); rowSp++) {
|
|
193
|
-
var ind = columnHeaderCellsIds[r + rowSp].findIndex(function (val, curInd) { return curInd >= curColSpan && !val; });
|
|
194
|
-
columnHeaderCellsIds[r + rowSp][ind] = id;
|
|
195
|
-
}
|
|
196
|
-
curColSpan++;
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
});
|
|
200
|
-
});
|
|
201
|
-
var dataCellsIds = measures.map(function (row) {
|
|
202
|
-
return row.cells.map(function (cell) { return (0, utils_1.generateDataKey)(cell.rowTuple.members, cell.columnTuple.members).replace(/\s/g, '-'); });
|
|
203
|
-
});
|
|
204
|
-
return (React.createElement("div", { ref: element, id: props.id, style: props.style, tabIndex: !props.navigatable ? props.tabIndex : undefined, className: (0, kendo_react_common_2.classNames)('k-pivotgrid', props.className), role: "grid" },
|
|
205
|
-
React.createElement("span", { className: "k-pivotgrid-empty-cell" },
|
|
206
|
-
React.createElement("span", { className: "k-sr-only" }, localization.toLanguageString(messages_1.emptyCellAriaLabel, messages_1.messages[messages_1.emptyCellAriaLabel]))),
|
|
207
|
-
React.createElement("div", { ref: columnHeadersContainer, className: "k-pivotgrid-column-headers", onScroll: handleHorizontalScroll },
|
|
208
|
-
React.createElement("table", { ref: columnHeadersTable, className: "k-pivotgrid-table", role: "none" },
|
|
209
|
-
React.createElement("colgroup", null, columnHeadersColumns),
|
|
210
|
-
React.createElement("tbody", { className: "k-pivotgrid-tbody", role: 'rowgroup' }, columnHeaderRows.map(function (row, r) {
|
|
211
|
-
var foundCell = false;
|
|
212
|
-
return (React.createElement(ColumnHeadersRowComponent, __assign({ key: row.name, role: "row" }, RowProps), row.cells.map(function (cell, cellIdx) {
|
|
213
|
-
var first = cellIdx !== 0 && !foundCell;
|
|
214
|
-
if (cell) {
|
|
215
|
-
foundCell = true;
|
|
216
|
-
}
|
|
217
|
-
var expanded = cell && Boolean(cell.children && cell.children.length);
|
|
218
|
-
var expandable = cell && (cell.hasChildren && (!cell.total || (cell.total && cell.parent.total)));
|
|
219
|
-
return cell
|
|
220
|
-
? (React.createElement(ColumnHeadersColumnCellComponent, __assign({}, HeaderCellProps, { key: columnHeaderCellsIds[r][cellIdx], "data-key": columnHeaderCellsIds[r][cellIdx], id: columnHeaderCellsIds[r][cellIdx], columnPath: cell.normalizedPath, rowSpan: cell.rowSpan || undefined, colSpan: cell.colSpan || undefined, onIconClick: handleColumnCellClick, dataItem: cell, expanded: expanded, expandable: expandable, total: cell.total, first: first, root: cell.levelNum === 0, role: "columnheader" }), cell.caption))
|
|
221
|
-
: null;
|
|
222
|
-
})));
|
|
223
|
-
})))),
|
|
224
|
-
React.createElement("div", { ref: rowHeadersContainer, className: "k-pivotgrid-row-headers" },
|
|
225
|
-
React.createElement("table", { ref: rowHeadersTable, className: "k-pivotgrid-table", role: "none" },
|
|
226
|
-
React.createElement("colgroup", null, rowHeaderColumns),
|
|
227
|
-
React.createElement("tbody", { className: "k-pivotgrid-tbody", role: "rowgroup" }, rowHeaderRows.map(function (row, rowId) { return (React.createElement(RowHeadersRowComponent, __assign({ key: (0, utils_1.generateKey)(rowHeaderLeafs[rowId].path) }, RowProps, { path: rowHeaderLeafs[rowId].path, role: "row", ariaOwns: dataCellsIds[rowId].join(' ') }), row.cells.filter(Boolean).map(function (cell) { return cell
|
|
228
|
-
? (React.createElement(RowHeadersCellComponent, __assign({}, HeaderCellProps, { key: (0, utils_1.generateKey)(cell.normalizedPath)
|
|
229
|
-
+ (cell.total ? '|[TOTAL]' : '')
|
|
230
|
-
+ (Boolean(cell.children && cell.children.length) ? '|[EXPANDED]' : ''), "data-key": (0, utils_1.generateKey)(cell.normalizedPath)
|
|
231
|
-
+ (cell.total ? '|[TOTAL]' : '')
|
|
232
|
-
+ (Boolean(cell.children && cell.children.length) ? '|[EXPANDED]' : ''), rowPath: cell.normalizedPath, rowSpan: cell.rowSpan || undefined, colSpan: cell.colSpan || undefined, dataItem: cell, expanded: Boolean(cell.children && cell.children.length), expandable: cell.hasChildren && !cell.total, total: cell.total, onIconClick: handleRowCellClick, root: cell.levelNum === 0, role: "rowheader" }), cell.caption))
|
|
233
|
-
: null; }))); })))),
|
|
234
|
-
React.createElement("div", { ref: valuesHeadersContainer, className: "k-pivotgrid-values", onScroll: handleValuesContainerScroll },
|
|
235
|
-
React.createElement("table", { className: "k-pivotgrid-table", role: "none" },
|
|
236
|
-
React.createElement("colgroup", null, dataColumns),
|
|
237
|
-
React.createElement("tbody", { className: "k-pivotgrid-tbody", role: "none" }, measures.map(function (row, rowId) { return (React.createElement(DataRowComponent, __assign({ key: (0, utils_1.generateKey)(rowHeaderLeafs[rowId].path) }, RowProps, { path: rowHeaderLeafs[rowId].path, role: "none" }), row.cells.map(function (cell, cellId) { return (React.createElement(CellComponent, __assign({ key: dataCellsIds[rowId][cellId], "data-key": dataCellsIds[rowId][cellId], id: dataCellsIds[rowId][cellId] }, CellProps, { rowPath: cell.rowTuple.members.map(function (m) { return m.name; }), columnPath: cell.columnTuple.members.map(function (m) { return m.name; }), dataItem: cell, total: rowHeaderLeafs[rowId].total || columnHeaderLeafs[cellId].total, role: "gridcell", ariaDescribedby: columnHeaderCellsIds.map(function (r) { return r[cellId]; }).join(' ') }), (cell && cell.data && cell.data.fmtValue) ? cell.data.fmtValue : '\u00A0')); }))); }))))));
|
|
238
|
-
});
|
|
239
|
-
var defaultProps = {
|
|
240
|
-
rowAxes: [],
|
|
241
|
-
columnAxes: [],
|
|
242
|
-
data: [],
|
|
243
|
-
row: Row_1.PivotGridRow,
|
|
244
|
-
column: Column_1.PivotGridColumn,
|
|
245
|
-
cell: Cell_1.PivotGridCell,
|
|
246
|
-
headerCell: HeaderCell_1.PivotGridHeaderCell
|
|
247
|
-
};
|
|
248
|
-
exports.PivotGrid.displayName = 'KendoReactPivotGrid';
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { ChipListProps as KendoReactChipListProps } from '@progress/kendo-react-buttons';
|
|
3
|
-
import { FieldProps } from '@progress/kendo-react-form';
|
|
4
|
-
import { PivotGridAxis } from '@progress/kendo-pivotgrid-common';
|
|
5
|
-
import { CustomComponent } from '@progress/kendo-react-common';
|
|
6
|
-
/**
|
|
7
|
-
* Represents the props of the [KendoReact PivotGridAxesEditor component]({% slug api_pivotgrid_pivotgridaxeseditor %}).
|
|
8
|
-
*/
|
|
9
|
-
export interface PivotGridAxesEditorProps extends FieldProps {
|
|
10
|
-
/**
|
|
11
|
-
* Represents the `value` of the AxesEditor.
|
|
12
|
-
*
|
|
13
|
-
* The `value` is an array of [PivotGridAxis]({% slug api_pivotgrid_pivotgridaxis %})
|
|
14
|
-
*/
|
|
15
|
-
value: PivotGridAxis[];
|
|
16
|
-
/**
|
|
17
|
-
* Indicates which of the three available axes are represented by the editor:
|
|
18
|
-
* - columnAxes
|
|
19
|
-
* - rowAxes
|
|
20
|
-
* - measureAxes
|
|
21
|
-
*/
|
|
22
|
-
field: string;
|
|
23
|
-
/**
|
|
24
|
-
* Overrides the default `chipList` component.
|
|
25
|
-
*
|
|
26
|
-
* The default component is: [KendoReactChipList]({% slug api_buttons_chiplist %}).
|
|
27
|
-
*/
|
|
28
|
-
chipList?: CustomComponent<KendoReactChipListProps>;
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* @hidden
|
|
32
|
-
*/
|
|
33
|
-
export declare const PivotGridConfiguratorEditorAxesContext: React.Context<{
|
|
34
|
-
axes: string | null;
|
|
35
|
-
}>;
|
|
36
|
-
/**
|
|
37
|
-
* Represents the object which is passed to the [`ref`](https://reactjs.org/docs/refs-and-the-dom.html) callback of the PivotGridAxesEditor component.
|
|
38
|
-
*/
|
|
39
|
-
export interface PivotGridAxesEditorHandle {
|
|
40
|
-
props: PivotGridAxesEditorProps;
|
|
41
|
-
element: HTMLDivElement | null;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Represents the [KendoReact PivotGridAxesEditor component]({% slug api_pivotgrid_pivotgridaxeseditorprops %}).
|
|
45
|
-
*/
|
|
46
|
-
export declare const PivotGridAxesEditor: React.ForwardRefExoticComponent<Omit<PivotGridAxesEditorProps, "ref"> & React.RefAttributes<PivotGridAxesEditorHandle | null>>;
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.PivotGridAxesEditor = exports.PivotGridConfiguratorEditorAxesContext = void 0;
|
|
15
|
-
var React = require("react");
|
|
16
|
-
var kendo_react_buttons_1 = require("@progress/kendo-react-buttons");
|
|
17
|
-
var kendo_react_common_1 = require("@progress/kendo-react-common");
|
|
18
|
-
var AxisEditor_1 = require("./AxisEditor");
|
|
19
|
-
/**
|
|
20
|
-
* @hidden
|
|
21
|
-
*/
|
|
22
|
-
exports.PivotGridConfiguratorEditorAxesContext = React.createContext({ axes: null });
|
|
23
|
-
/**
|
|
24
|
-
* Represents the [KendoReact PivotGridAxesEditor component]({% slug api_pivotgrid_pivotgridaxeseditorprops %}).
|
|
25
|
-
*/
|
|
26
|
-
exports.PivotGridAxesEditor = React.forwardRef(function (props, ref) {
|
|
27
|
-
var _a = __assign(__assign({}, defaultProps), props), value = _a.value, field = _a.field;
|
|
28
|
-
var chipList = React.useRef(null);
|
|
29
|
-
var element = React.useRef(null);
|
|
30
|
-
var target = React.useRef(null);
|
|
31
|
-
var _b = (0, kendo_react_common_1.useCustomComponent)(props.chipList || defaultProps.chipList), ChipListComponent = _b[0], ChipListProps = _b[1];
|
|
32
|
-
React.useImperativeHandle(element, function () { return chipList.current && chipList.current.element; });
|
|
33
|
-
React.useImperativeHandle(target, function () { return ({ props: props, element: element.current }); });
|
|
34
|
-
React.useImperativeHandle(ref, function () { return target.current; });
|
|
35
|
-
var data = value
|
|
36
|
-
.filter(function (v) { return v.name.length === 1 && v.name.every(function (n) { return n.indexOf('&') === -1; }); })
|
|
37
|
-
.map(function (i) { return (__assign(__assign({}, i), { text: String(i.name) })); });
|
|
38
|
-
return (React.createElement(exports.PivotGridConfiguratorEditorAxesContext.Provider, { value: { axes: field } },
|
|
39
|
-
React.createElement(ChipListComponent, __assign({ ref: (0, kendo_react_common_1.canUseRef)(ChipListComponent) ? chipList : undefined, textField: "text", valueField: "name", data: data, chip: AxisEditor_1.PivotGridAxisEditor, style: { position: 'relative' }, className: props.className, selection: "none" }, ChipListProps))));
|
|
40
|
-
});
|
|
41
|
-
var defaultProps = {
|
|
42
|
-
value: [],
|
|
43
|
-
chipList: kendo_react_buttons_1.ChipList
|
|
44
|
-
};
|
|
45
|
-
exports.PivotGridAxesEditor.defaultProps = defaultProps;
|
|
46
|
-
exports.PivotGridAxesEditor.displayName = 'KendoReactPivotGridAxesEditor';
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
14
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
15
|
-
if (ar || !(i in from)) {
|
|
16
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
17
|
-
ar[i] = from[i];
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
21
|
-
};
|
|
22
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
exports.PivotGridAxisEditor = void 0;
|
|
24
|
-
var React = require("react");
|
|
25
|
-
var kendo_pivotgrid_common_1 = require("@progress/kendo-pivotgrid-common");
|
|
26
|
-
var kendo_react_common_1 = require("@progress/kendo-react-common");
|
|
27
|
-
var kendo_react_data_tools_1 = require("@progress/kendo-react-data-tools");
|
|
28
|
-
var kendo_react_buttons_1 = require("@progress/kendo-react-buttons");
|
|
29
|
-
var utils_1 = require("../utils");
|
|
30
|
-
var hooks_1 = require("../hooks/");
|
|
31
|
-
var shared_1 = require("../shared");
|
|
32
|
-
var AxesEditor_1 = require("./AxesEditor");
|
|
33
|
-
var AxisFilterFieldsEditor_1 = require("./AxisFilterFieldsEditor");
|
|
34
|
-
/**
|
|
35
|
-
* Represents the [KendoReact PivotGridAxisEditor component]({% slug api_pivotgrid_pivotgridaxiseditorprops %}).
|
|
36
|
-
*/
|
|
37
|
-
exports.PivotGridAxisEditor = React.forwardRef(function (props, ref) {
|
|
38
|
-
var initialX = React.useRef(0);
|
|
39
|
-
var initialY = React.useRef(0);
|
|
40
|
-
var chip = React.useRef(null);
|
|
41
|
-
var element = React.useRef(null);
|
|
42
|
-
var target = React.useRef(null);
|
|
43
|
-
var axes = React.useContext(AxesEditor_1.PivotGridConfiguratorEditorAxesContext).axes;
|
|
44
|
-
var _a = React.useState(false), drag = _a[0], setDrag = _a[1];
|
|
45
|
-
var _b = React.useContext(shared_1.PivotGridConfiguratorEditorStateContext), state = _b[0], dispatchState = _b[1];
|
|
46
|
-
React.useImperativeHandle(element, function () { return chip.current && chip.current.element; });
|
|
47
|
-
React.useImperativeHandle(target, function () { return ({ props: props, element: element.current }); });
|
|
48
|
-
React.useImperativeHandle(ref, function () { return target.current; });
|
|
49
|
-
var _c = (0, kendo_react_common_1.useCustomComponent)(props.chip || defaultProps.chip), ChipComponent = _c[0], ChipProps = _c[1];
|
|
50
|
-
var _d = (0, kendo_react_common_1.useCustomComponent)(props.dropClue || defaultProps.dropClue), DropClueComponent = _d[0], DropClueProps = _d[1];
|
|
51
|
-
var _e = (0, kendo_react_common_1.useCustomComponent)(props.columnMenuTextColumn || defaultProps.columnMenuTextColumn), ColumnMenuTextColumnComponent = _e[0], ColumnMenuTextColumnProps = _e[1];
|
|
52
|
-
var _f = (0, kendo_react_common_1.useCustomComponent)(props.filterFieldsEditor || defaultProps.filterFieldsEditor), FilterFieldsEditorComponent = _f[0], FilterFieldsEditorProps = _f[1];
|
|
53
|
-
var inFilter = (0, utils_1.findFilters)(state.filter, String(props.value), 'in');
|
|
54
|
-
var textFilter = (0, utils_1.findFilters)(state.filter, String(props.value));
|
|
55
|
-
var handleSortChange = function (syntheticEvent, sort) {
|
|
56
|
-
dispatchState({ type: hooks_1.PIVOT_CONFIGURATOR_ACTION.setSort, payload: sort }, syntheticEvent);
|
|
57
|
-
};
|
|
58
|
-
var handleFilterChange = function (syntheticEvent, filter) {
|
|
59
|
-
if (filter.length) {
|
|
60
|
-
dispatchState({
|
|
61
|
-
type: hooks_1.PIVOT_CONFIGURATOR_ACTION.setFilter,
|
|
62
|
-
payload: __spreadArray(__spreadArray([], (inFilter || []), true), filter.reduce(function (acc, current) { return __spreadArray(__spreadArray([], acc, true), current.filters.filter(function (f) { return f.value; }), true); }, []), true)
|
|
63
|
-
}, syntheticEvent);
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
dispatchState({ type: hooks_1.PIVOT_CONFIGURATOR_ACTION.setFilter, payload: inFilter }, syntheticEvent);
|
|
67
|
-
}
|
|
68
|
-
};
|
|
69
|
-
var handleRemove = function (event) {
|
|
70
|
-
dispatchState({ type: hooks_1.PIVOT_CONFIGURATOR_ACTION.remove, payload: props.dataItem }, event.syntheticEvent);
|
|
71
|
-
};
|
|
72
|
-
var customRender = function (children) {
|
|
73
|
-
var customizedChildren = children.slice();
|
|
74
|
-
var filter = (0, utils_1.findFilter)(state.filter, String(props.dataItem.name), 'in');
|
|
75
|
-
customizedChildren.splice(1, 0, (React.createElement(FilterFieldsEditorComponent, __assign({ key: 'axis-filter-fields-editor', defaultFilter: filter, dataItem: props.dataItem, data: props.dataItem.fields, axes: axes }, FilterFieldsEditorProps))));
|
|
76
|
-
return customizedChildren;
|
|
77
|
-
};
|
|
78
|
-
var handlePress = function (event) {
|
|
79
|
-
initialX.current = event.clientX;
|
|
80
|
-
initialY.current = event.clientY;
|
|
81
|
-
};
|
|
82
|
-
var handleDrag = function (event) {
|
|
83
|
-
if (Math.abs(initialX.current - event.clientX) < 10 &&
|
|
84
|
-
Math.abs(initialY.current - event.clientY) < 10) {
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
if (element.current) {
|
|
88
|
-
element.current.style.transform = "translate(".concat(event.clientX - initialX.current, "px, ").concat(event.clientY - initialY.current, "px)");
|
|
89
|
-
}
|
|
90
|
-
setDrag(true);
|
|
91
|
-
dispatchState({ type: hooks_1.PIVOT_CONFIGURATOR_ACTION.setDragItem, payload: props.dataItem });
|
|
92
|
-
};
|
|
93
|
-
var handleRelease = function () {
|
|
94
|
-
setDrag(false);
|
|
95
|
-
if (state.dragItem) {
|
|
96
|
-
if (element.current) {
|
|
97
|
-
element.current.style.transform = '';
|
|
98
|
-
}
|
|
99
|
-
dispatchState({ type: hooks_1.PIVOT_CONFIGURATOR_ACTION.drop, payload: props.dataItem });
|
|
100
|
-
}
|
|
101
|
-
};
|
|
102
|
-
var handleMouseEnter = function (event) {
|
|
103
|
-
if (state.dragItem) {
|
|
104
|
-
dispatchState({ type: hooks_1.PIVOT_CONFIGURATOR_ACTION.setDropTarget, payload: props.dataItem }, event.syntheticEvent);
|
|
105
|
-
dispatchState({ type: hooks_1.PIVOT_CONFIGURATOR_ACTION.setDropZone, payload: axes }, event.syntheticEvent);
|
|
106
|
-
}
|
|
107
|
-
};
|
|
108
|
-
var handleMouseMove = function (event) {
|
|
109
|
-
if (state.dragItem && !drag) {
|
|
110
|
-
if (element.current) {
|
|
111
|
-
var rect = element.current.getBoundingClientRect();
|
|
112
|
-
var x = event.syntheticEvent.clientX - rect.left;
|
|
113
|
-
var direction = x < rect.width / 2 ? 'before' : 'after';
|
|
114
|
-
dispatchState({ type: hooks_1.PIVOT_CONFIGURATOR_ACTION.setDropDirection, payload: direction }, event.syntheticEvent);
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
};
|
|
118
|
-
(0, kendo_react_common_1.useDraggable)(element, {
|
|
119
|
-
onPress: handlePress,
|
|
120
|
-
onDrag: handleDrag,
|
|
121
|
-
onRelease: handleRelease
|
|
122
|
-
});
|
|
123
|
-
return (React.createElement(React.Fragment, null,
|
|
124
|
-
(state.dropTarget && (0, kendo_pivotgrid_common_1.compareAxes)(state.dropTarget, props.dataItem) && state.dropDirection === 'before')
|
|
125
|
-
&& (React.createElement(DropClueComponent, __assign({}, DropClueProps))),
|
|
126
|
-
React.createElement(ChipComponent, __assign({ ref: (0, kendo_react_common_1.canUseRef)(ChipComponent) ? chip : undefined }, props, { removable: true, onRemove: handleRemove, onMouseEnter: handleMouseEnter, onMouseMove: handleMouseMove, style: { pointerEvents: drag ? 'none' : undefined }, rounded: 'full' }, ChipProps),
|
|
127
|
-
props.text,
|
|
128
|
-
(axes !== 'measureAxes') && (React.createElement(ColumnMenuTextColumnComponent, __assign({ field: String(props.value), itemsRender: customRender, sort: state.sort, onSortChange: handleSortChange, filter: (textFilter && textFilter.length) ? [{ logic: 'and', filters: textFilter }] : undefined, onFilterChange: handleFilterChange, filterContent: [
|
|
129
|
-
kendo_react_data_tools_1.ColumnMenuTextFilter
|
|
130
|
-
] }, ColumnMenuTextColumnProps)))),
|
|
131
|
-
(state.dropTarget && (0, kendo_pivotgrid_common_1.compareAxes)(state.dropTarget, props.dataItem) && state.dropDirection === 'after')
|
|
132
|
-
&& (React.createElement(DropClueComponent, __assign({}, DropClueProps)))));
|
|
133
|
-
});
|
|
134
|
-
var defaultProps = {
|
|
135
|
-
chip: kendo_react_buttons_1.Chip,
|
|
136
|
-
columnMenuTextColumn: kendo_react_data_tools_1.ColumnMenuTextColumn,
|
|
137
|
-
filterFieldsEditor: AxisFilterFieldsEditor_1.PivotGridAxisFilterFieldsEditor,
|
|
138
|
-
dropClue: function (props) { return React.createElement("div", __assign({ className: "k-grouping-dropclue", style: { position: 'relative', zIndex: 10000 } }, props)); }
|
|
139
|
-
};
|
|
140
|
-
exports.PivotGridAxisEditor.defaultProps = defaultProps;
|
|
141
|
-
exports.PivotGridAxisEditor.displayName = 'KendoReactPivotGridAxisEditor';
|