@progress/kendo-react-data-tools 6.1.1 → 7.0.0-develop.2
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/columnmenu → columnmenu}/ColumnMenu.d.ts +4 -0
- package/{dist/es/columnmenu → columnmenu}/ColumnMenuFilterForm.d.ts +4 -0
- package/columnmenu/ColumnMenuFilterLogic.d.ts +7 -0
- package/{dist/es/columnmenu → columnmenu}/ColumnMenuFilters.d.ts +4 -0
- package/{dist/npm/columnmenu → columnmenu}/ColumnMenuItem.d.ts +4 -0
- package/{dist/npm/columnmenu → columnmenu}/ColumnMenuOperators.d.ts +4 -0
- package/columnmenu/index.d.ts +10 -0
- package/dist/cdn/js/kendo-react-datatools.js +5 -0
- package/{dist/npm/drag → drag}/ColumnDraggable.d.ts +5 -1
- package/{dist/es/drag → drag}/ColumnResize.d.ts +4 -0
- package/{dist/es/drag → drag}/ColumnResizer.d.ts +5 -1
- package/{dist/npm/drag → drag}/CommonDragLogic.d.ts +5 -1
- package/{dist/npm/drag → drag}/DragClue.d.ts +5 -1
- package/drag/DropClue.d.ts +23 -0
- package/{dist/npm/filter → filter}/Expression.d.ts +5 -1
- package/{dist/es/filter → filter}/FieldSettings.d.ts +4 -0
- package/{dist/es/filter → filter}/Filter.d.ts +5 -1
- package/{dist/es/filter → filter}/Group.d.ts +5 -1
- package/{dist/npm/filter → filter}/filters/BooleanFilter.d.ts +5 -1
- package/{dist/npm/filter → filter}/filters/DateFilter.d.ts +5 -1
- package/{dist/npm/filter → filter}/filters/EnumFilter.d.ts +5 -1
- package/{dist/es/filter → filter}/filters/NumericFilter.d.ts +5 -1
- package/{dist/es/filter → filter}/filters/TextFilter.d.ts +5 -1
- package/filter/filters/index.d.ts +9 -0
- package/filter/index.d.ts +10 -0
- package/{dist/es/filter → filter}/operators.d.ts +4 -0
- package/filteringCells/BooleanFilter.d.ts +12 -0
- package/filteringCells/DateFilter.d.ts +12 -0
- package/{dist/es/filteringCells → filteringCells}/FilterCellProps.d.ts +4 -1
- package/{dist/npm/filteringCells → filteringCells}/FilterComponent.d.ts +4 -0
- package/{dist/es/filteringCells → filteringCells}/FilterComponentProps.d.ts +4 -0
- package/filteringCells/FilterOperator.d.ts +17 -0
- package/filteringCells/NumericFilter.d.ts +12 -0
- package/filteringCells/TextFilter.d.ts +12 -0
- package/filteringCells/index.d.ts +12 -0
- package/{dist/es/header → header}/CellProps.d.ts +4 -0
- package/{dist/npm/header → header}/ColumnProps.d.ts +4 -0
- package/{dist/es/header → header}/FilterRow.d.ts +5 -1
- package/header/Header.d.ts +22 -0
- package/{dist/es/header → header}/HeaderCell.d.ts +5 -1
- package/{dist/es/header → header}/HeaderRow.d.ts +6 -2
- package/header/HeaderSelectionCell.d.ts +15 -0
- package/header/HeaderThElement.d.ts +26 -0
- package/{dist/es/header → header}/SortSettings.d.ts +6 -2
- package/header/index.d.ts +14 -0
- package/{dist/npm/header → header}/utils/index.d.ts +4 -0
- package/{dist/es/main.d.ts → index.d.ts} +5 -1
- package/index.js +5 -0
- package/index.mjs +2901 -0
- package/{dist/npm/messages → messages}/index.d.ts +4 -0
- package/{dist/es/navigation → navigation}/TableKeyboardNavigation.d.ts +9 -5
- package/navigation/TableKeyboardNavigationContext.d.ts +10 -0
- package/navigation/TableKeyboardNavigationContextType.d.ts +11 -0
- package/navigation/TableKeyboardNavigationStateType.d.ts +14 -0
- package/{dist/npm/navigation → navigation}/constants.d.ts +4 -0
- package/navigation/hooks.d.ts +16 -0
- package/{dist/npm/navigation → navigation}/utils.d.ts +6 -2
- package/package-metadata.d.ts +9 -0
- package/package.json +36 -51
- package/{dist/es/pager → pager}/Pager.d.ts +5 -1
- package/{dist/es/pager → pager}/PagerInput.d.ts +5 -1
- package/{dist/npm/pager → pager}/PagerNumericButtons.d.ts +5 -1
- package/{dist/npm/pager → pager}/PagerPageSizes.d.ts +5 -1
- package/{dist/npm/selection → selection}/TableSelectableSettings.d.ts +5 -1
- package/{dist/es/selection → selection}/TableSelection.d.ts +5 -2
- package/selection/constants.d.ts +10 -0
- package/{dist/es/selection → selection}/events.d.ts +4 -0
- package/{dist/es/selection → selection}/utils.d.ts +4 -0
- package/utils/DataItemWrapper.d.ts +14 -0
- package/{dist/npm/utils → utils}/data-operations.d.ts +4 -0
- package/{dist/npm/utils → utils}/group-operations.d.ts +5 -1
- package/virtualization/columns.d.ts +19 -0
- package/virtualization/index.d.ts +5 -0
- package/about.md +0 -3
- package/dist/cdn/js/kendo-react-data-tools.js +0 -1
- package/dist/es/columnmenu/ColumnMenu.d.ts +0 -79
- package/dist/es/columnmenu/ColumnMenu.js +0 -238
- package/dist/es/columnmenu/ColumnMenuFilterForm.js +0 -33
- package/dist/es/columnmenu/ColumnMenuFilterLogic.d.ts +0 -3
- package/dist/es/columnmenu/ColumnMenuFilterLogic.js +0 -22
- package/dist/es/columnmenu/ColumnMenuFilters.js +0 -62
- package/dist/es/columnmenu/ColumnMenuItem.d.ts +0 -11
- package/dist/es/columnmenu/ColumnMenuItem.js +0 -7
- package/dist/es/columnmenu/ColumnMenuOperators.d.ts +0 -65
- package/dist/es/columnmenu/ColumnMenuOperators.js +0 -137
- package/dist/es/columnmenu/index.d.ts +0 -6
- package/dist/es/columnmenu/index.js +0 -6
- package/dist/es/drag/ColumnDraggable.d.ts +0 -30
- package/dist/es/drag/ColumnDraggable.js +0 -62
- package/dist/es/drag/ColumnResize.js +0 -95
- package/dist/es/drag/ColumnResizer.js +0 -71
- package/dist/es/drag/CommonDragLogic.d.ts +0 -38
- package/dist/es/drag/CommonDragLogic.js +0 -172
- package/dist/es/drag/DragClue.d.ts +0 -22
- package/dist/es/drag/DragClue.js +0 -66
- package/dist/es/drag/DropClue.d.ts +0 -19
- package/dist/es/drag/DropClue.js +0 -52
- package/dist/es/filter/Expression.d.ts +0 -46
- package/dist/es/filter/Expression.js +0 -140
- package/dist/es/filter/FieldSettings.js +0 -1
- package/dist/es/filter/Filter.js +0 -99
- package/dist/es/filter/Group.js +0 -163
- package/dist/es/filter/filters/BooleanFilter.d.ts +0 -43
- package/dist/es/filter/filters/BooleanFilter.js +0 -48
- package/dist/es/filter/filters/DateFilter.d.ts +0 -26
- package/dist/es/filter/filters/DateFilter.js +0 -61
- package/dist/es/filter/filters/EnumFilter.d.ts +0 -43
- package/dist/es/filter/filters/EnumFilter.js +0 -69
- package/dist/es/filter/filters/NumericFilter.js +0 -64
- package/dist/es/filter/filters/TextFilter.js +0 -65
- package/dist/es/filter/filters/index.d.ts +0 -5
- package/dist/es/filter/filters/index.js +0 -5
- package/dist/es/filter/index.d.ts +0 -6
- package/dist/es/filter/index.js +0 -6
- package/dist/es/filter/operators.js +0 -150
- package/dist/es/filteringCells/BooleanFilter.d.ts +0 -8
- package/dist/es/filteringCells/BooleanFilter.js +0 -81
- package/dist/es/filteringCells/DateFilter.d.ts +0 -8
- package/dist/es/filteringCells/DateFilter.js +0 -46
- package/dist/es/filteringCells/FilterCellProps.js +0 -1
- package/dist/es/filteringCells/FilterComponent.d.ts +0 -17
- package/dist/es/filteringCells/FilterComponent.js +0 -128
- package/dist/es/filteringCells/FilterComponentProps.js +0 -1
- package/dist/es/filteringCells/FilterOperator.d.ts +0 -13
- package/dist/es/filteringCells/FilterOperator.js +0 -1
- package/dist/es/filteringCells/NumericFilter.d.ts +0 -8
- package/dist/es/filteringCells/NumericFilter.js +0 -46
- package/dist/es/filteringCells/TextFilter.d.ts +0 -8
- package/dist/es/filteringCells/TextFilter.js +0 -46
- package/dist/es/filteringCells/index.d.ts +0 -8
- package/dist/es/filteringCells/index.js +0 -8
- package/dist/es/header/CellProps.js +0 -1
- package/dist/es/header/ColumnProps.d.ts +0 -153
- package/dist/es/header/ColumnProps.js +0 -11
- package/dist/es/header/FilterRow.js +0 -33
- package/dist/es/header/Header.d.ts +0 -18
- package/dist/es/header/Header.js +0 -54
- package/dist/es/header/HeaderCell.js +0 -26
- package/dist/es/header/HeaderRow.js +0 -166
- package/dist/es/header/HeaderSelectionCell.d.ts +0 -12
- package/dist/es/header/HeaderSelectionCell.js +0 -18
- package/dist/es/header/HeaderThElement.d.ts +0 -23
- package/dist/es/header/HeaderThElement.js +0 -25
- package/dist/es/header/SortSettings.js +0 -19
- package/dist/es/header/index.d.ts +0 -10
- package/dist/es/header/index.js +0 -10
- package/dist/es/header/utils/index.d.ts +0 -83
- package/dist/es/header/utils/index.js +0 -186
- package/dist/es/main.js +0 -26
- package/dist/es/messages/index.d.ts +0 -385
- package/dist/es/messages/index.js +0 -386
- package/dist/es/navigation/TableKeyboardNavigation.js +0 -241
- package/dist/es/navigation/TableKeyboardNavigationContext.d.ts +0 -6
- package/dist/es/navigation/TableKeyboardNavigationContext.js +0 -6
- package/dist/es/navigation/TableKeyboardNavigationContextType.d.ts +0 -7
- package/dist/es/navigation/TableKeyboardNavigationContextType.js +0 -1
- package/dist/es/navigation/TableKeyboardNavigationStateType.d.ts +0 -10
- package/dist/es/navigation/TableKeyboardNavigationStateType.js +0 -1
- package/dist/es/navigation/constants.d.ts +0 -54
- package/dist/es/navigation/constants.js +0 -79
- package/dist/es/navigation/hooks.d.ts +0 -12
- package/dist/es/navigation/hooks.js +0 -19
- package/dist/es/navigation/utils.d.ts +0 -145
- package/dist/es/navigation/utils.js +0 -212
- package/dist/es/package-metadata.d.ts +0 -5
- package/dist/es/package-metadata.js +0 -11
- package/dist/es/pager/Pager.js +0 -222
- package/dist/es/pager/PagerInput.js +0 -57
- package/dist/es/pager/PagerNumericButtons.d.ts +0 -28
- package/dist/es/pager/PagerNumericButtons.js +0 -105
- package/dist/es/pager/PagerPageSizes.d.ts +0 -26
- package/dist/es/pager/PagerPageSizes.js +0 -51
- package/dist/es/selection/TableSelectableSettings.d.ts +0 -31
- package/dist/es/selection/TableSelectableSettings.js +0 -2
- package/dist/es/selection/TableSelection.js +0 -155
- package/dist/es/selection/constants.d.ts +0 -6
- package/dist/es/selection/constants.js +0 -6
- package/dist/es/selection/events.js +0 -1
- package/dist/es/selection/utils.js +0 -237
- package/dist/es/utils/DataItemWrapper.d.ts +0 -10
- package/dist/es/utils/DataItemWrapper.js +0 -1
- package/dist/es/utils/data-operations.d.ts +0 -94
- package/dist/es/utils/data-operations.js +0 -265
- package/dist/es/utils/group-operations.d.ts +0 -29
- package/dist/es/utils/group-operations.js +0 -54
- package/dist/es/virtualization/columns.d.ts +0 -15
- package/dist/es/virtualization/columns.js +0 -75
- package/dist/es/virtualization/index.d.ts +0 -1
- package/dist/es/virtualization/index.js +0 -1
- package/dist/npm/columnmenu/ColumnMenu.js +0 -245
- package/dist/npm/columnmenu/ColumnMenuFilterForm.d.ts +0 -13
- package/dist/npm/columnmenu/ColumnMenuFilterForm.js +0 -38
- package/dist/npm/columnmenu/ColumnMenuFilterLogic.d.ts +0 -3
- package/dist/npm/columnmenu/ColumnMenuFilterLogic.js +0 -26
- package/dist/npm/columnmenu/ColumnMenuFilters.d.ts +0 -19
- package/dist/npm/columnmenu/ColumnMenuFilters.js +0 -69
- package/dist/npm/columnmenu/ColumnMenuItem.js +0 -11
- package/dist/npm/columnmenu/ColumnMenuOperators.js +0 -140
- package/dist/npm/columnmenu/index.d.ts +0 -6
- package/dist/npm/columnmenu/index.js +0 -22
- package/dist/npm/drag/ColumnDraggable.js +0 -65
- package/dist/npm/drag/ColumnResize.d.ts +0 -32
- package/dist/npm/drag/ColumnResize.js +0 -98
- package/dist/npm/drag/ColumnResizer.d.ts +0 -28
- package/dist/npm/drag/ColumnResizer.js +0 -74
- package/dist/npm/drag/CommonDragLogic.js +0 -175
- package/dist/npm/drag/DragClue.js +0 -69
- package/dist/npm/drag/DropClue.d.ts +0 -19
- package/dist/npm/drag/DropClue.js +0 -55
- package/dist/npm/filter/Expression.js +0 -143
- package/dist/npm/filter/FieldSettings.d.ts +0 -30
- package/dist/npm/filter/FieldSettings.js +0 -2
- package/dist/npm/filter/Filter.d.ts +0 -79
- package/dist/npm/filter/Filter.js +0 -102
- package/dist/npm/filter/Group.d.ts +0 -54
- package/dist/npm/filter/Group.js +0 -166
- package/dist/npm/filter/filters/BooleanFilter.js +0 -51
- package/dist/npm/filter/filters/DateFilter.js +0 -64
- package/dist/npm/filter/filters/EnumFilter.js +0 -72
- package/dist/npm/filter/filters/NumericFilter.d.ts +0 -33
- package/dist/npm/filter/filters/NumericFilter.js +0 -67
- package/dist/npm/filter/filters/TextFilter.d.ts +0 -40
- package/dist/npm/filter/filters/TextFilter.js +0 -68
- package/dist/npm/filter/filters/index.d.ts +0 -5
- package/dist/npm/filter/filters/index.js +0 -21
- package/dist/npm/filter/index.d.ts +0 -6
- package/dist/npm/filter/index.js +0 -22
- package/dist/npm/filter/operators.d.ts +0 -73
- package/dist/npm/filter/operators.js +0 -155
- package/dist/npm/filteringCells/BooleanFilter.d.ts +0 -8
- package/dist/npm/filteringCells/BooleanFilter.js +0 -84
- package/dist/npm/filteringCells/DateFilter.d.ts +0 -8
- package/dist/npm/filteringCells/DateFilter.js +0 -49
- package/dist/npm/filteringCells/FilterCellProps.d.ts +0 -36
- package/dist/npm/filteringCells/FilterCellProps.js +0 -2
- package/dist/npm/filteringCells/FilterComponent.js +0 -132
- package/dist/npm/filteringCells/FilterComponentProps.d.ts +0 -23
- package/dist/npm/filteringCells/FilterComponentProps.js +0 -2
- package/dist/npm/filteringCells/FilterOperator.d.ts +0 -13
- package/dist/npm/filteringCells/FilterOperator.js +0 -2
- package/dist/npm/filteringCells/NumericFilter.d.ts +0 -8
- package/dist/npm/filteringCells/NumericFilter.js +0 -49
- package/dist/npm/filteringCells/TextFilter.d.ts +0 -8
- package/dist/npm/filteringCells/TextFilter.js +0 -49
- package/dist/npm/filteringCells/index.d.ts +0 -8
- package/dist/npm/filteringCells/index.js +0 -24
- package/dist/npm/header/CellProps.d.ts +0 -68
- package/dist/npm/header/CellProps.js +0 -2
- package/dist/npm/header/ColumnProps.js +0 -14
- package/dist/npm/header/FilterRow.d.ts +0 -25
- package/dist/npm/header/FilterRow.js +0 -37
- package/dist/npm/header/Header.d.ts +0 -18
- package/dist/npm/header/Header.js +0 -57
- package/dist/npm/header/HeaderCell.d.ts +0 -47
- package/dist/npm/header/HeaderCell.js +0 -30
- package/dist/npm/header/HeaderRow.d.ts +0 -37
- package/dist/npm/header/HeaderRow.js +0 -169
- package/dist/npm/header/HeaderSelectionCell.d.ts +0 -12
- package/dist/npm/header/HeaderSelectionCell.js +0 -22
- package/dist/npm/header/HeaderThElement.d.ts +0 -23
- package/dist/npm/header/HeaderThElement.js +0 -29
- package/dist/npm/header/SortSettings.d.ts +0 -26
- package/dist/npm/header/SortSettings.js +0 -23
- package/dist/npm/header/index.d.ts +0 -10
- package/dist/npm/header/index.js +0 -26
- package/dist/npm/header/utils/index.js +0 -196
- package/dist/npm/main.d.ts +0 -26
- package/dist/npm/main.js +0 -51
- package/dist/npm/messages/index.js +0 -390
- package/dist/npm/navigation/TableKeyboardNavigation.d.ts +0 -68
- package/dist/npm/navigation/TableKeyboardNavigation.js +0 -244
- package/dist/npm/navigation/TableKeyboardNavigationContext.d.ts +0 -6
- package/dist/npm/navigation/TableKeyboardNavigationContext.js +0 -9
- package/dist/npm/navigation/TableKeyboardNavigationContextType.d.ts +0 -7
- package/dist/npm/navigation/TableKeyboardNavigationContextType.js +0 -2
- package/dist/npm/navigation/TableKeyboardNavigationStateType.d.ts +0 -10
- package/dist/npm/navigation/TableKeyboardNavigationStateType.js +0 -2
- package/dist/npm/navigation/constants.js +0 -82
- package/dist/npm/navigation/hooks.d.ts +0 -12
- package/dist/npm/navigation/hooks.js +0 -23
- package/dist/npm/navigation/utils.js +0 -235
- package/dist/npm/package-metadata.d.ts +0 -5
- package/dist/npm/package-metadata.js +0 -14
- package/dist/npm/pager/Pager.d.ts +0 -204
- package/dist/npm/pager/Pager.js +0 -225
- package/dist/npm/pager/PagerInput.d.ts +0 -25
- package/dist/npm/pager/PagerInput.js +0 -60
- package/dist/npm/pager/PagerNumericButtons.js +0 -108
- package/dist/npm/pager/PagerPageSizes.js +0 -54
- package/dist/npm/selection/TableSelectableSettings.js +0 -3
- package/dist/npm/selection/TableSelection.d.ts +0 -12
- package/dist/npm/selection/TableSelection.js +0 -159
- package/dist/npm/selection/constants.d.ts +0 -6
- package/dist/npm/selection/constants.js +0 -9
- package/dist/npm/selection/events.d.ts +0 -94
- package/dist/npm/selection/events.js +0 -2
- package/dist/npm/selection/utils.d.ts +0 -66
- package/dist/npm/selection/utils.js +0 -249
- package/dist/npm/utils/DataItemWrapper.d.ts +0 -10
- package/dist/npm/utils/DataItemWrapper.js +0 -2
- package/dist/npm/utils/data-operations.js +0 -278
- package/dist/npm/utils/group-operations.js +0 -60
- package/dist/npm/virtualization/columns.d.ts +0 -15
- package/dist/npm/virtualization/columns.js +0 -79
- package/dist/npm/virtualization/index.d.ts +0 -1
- package/dist/npm/virtualization/index.js +0 -17
- package/dist/systemjs/kendo-react-data-tools.js +0 -1
- package/e2e-next/filter.basic.tests.ts +0 -24
- package/e2e-next/pager.basic.tests.ts +0 -24
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
var __assign = (this && this.__assign) || function () {
|
|
2
|
-
__assign = Object.assign || function(t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
-
t[p] = s[p];
|
|
7
|
-
}
|
|
8
|
-
return t;
|
|
9
|
-
};
|
|
10
|
-
return __assign.apply(this, arguments);
|
|
11
|
-
};
|
|
12
|
-
import * as React from 'react';
|
|
13
|
-
import * as ReactDOM from 'react-dom';
|
|
14
|
-
import { Draggable, useDocument } from '@progress/kendo-react-common';
|
|
15
|
-
import { closestTagName, getColumnIndex, getOffset, getRowIndex, getSelectionOptions, relativeContextElement } from './utils';
|
|
16
|
-
import { TABLE_PREVENT_SELECTION_ELEMENT } from './constants';
|
|
17
|
-
/** @hidden */
|
|
18
|
-
export var TableSelection = function (props) {
|
|
19
|
-
var _a;
|
|
20
|
-
var onRelease = props.onRelease, childRef = props.childRef;
|
|
21
|
-
var _b = getSelectionOptions(props.selectable), selectionEnabled = _b.enabled, selectionDrag = _b.drag, selectionMode = _b.mode, selectionCell = _b.cell;
|
|
22
|
-
var draggableRef = React.useRef(null);
|
|
23
|
-
var overlayElementRef = React.useRef(null);
|
|
24
|
-
var dragStartRef = React.useRef({ clientX: 0, clientY: 0 });
|
|
25
|
-
var _c = React.useState(null), overlaySettings = _c[0], setOverlaySettings = _c[1];
|
|
26
|
-
var offsetParentRef = React.useRef();
|
|
27
|
-
var isDraggedRef = React.useRef(false);
|
|
28
|
-
var isPreventedRef = React.useRef(false);
|
|
29
|
-
var onPressHandler = React.useCallback(function (eventData) {
|
|
30
|
-
var event = eventData.event;
|
|
31
|
-
isPreventedRef.current = event.originalEvent.target.hasAttribute(TABLE_PREVENT_SELECTION_ELEMENT);
|
|
32
|
-
if (isPreventedRef.current || !draggableRef.current) {
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
offsetParentRef.current = relativeContextElement(draggableRef.current.element);
|
|
36
|
-
dragStartRef.current = {
|
|
37
|
-
clientY: event.clientY,
|
|
38
|
-
clientX: event.clientX
|
|
39
|
-
};
|
|
40
|
-
}, []);
|
|
41
|
-
var onDragHandler = React.useCallback(function (eventData) {
|
|
42
|
-
var event = eventData.event;
|
|
43
|
-
var _a = dragStartRef.current, clientX = _a.clientX, clientY = _a.clientY;
|
|
44
|
-
if (isPreventedRef.current) {
|
|
45
|
-
return;
|
|
46
|
-
}
|
|
47
|
-
if (!selectionDrag || selectionMode === 'single') {
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
if (Math.abs(clientY - event.clientY) > 5 || Math.abs(clientX - event.clientX) > 5) {
|
|
51
|
-
isDraggedRef.current = true;
|
|
52
|
-
}
|
|
53
|
-
if (isDraggedRef.current) {
|
|
54
|
-
var offset = getOffset(offsetParentRef.current);
|
|
55
|
-
setOverlaySettings({
|
|
56
|
-
top: Math.min(clientY, event.clientY) - offset.top,
|
|
57
|
-
left: Math.min(clientX, event.clientX) - offset.left,
|
|
58
|
-
width: Math.abs(event.clientX - clientX),
|
|
59
|
-
height: Math.abs(event.clientY - clientY)
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
}, [setOverlaySettings, selectionDrag, selectionMode]);
|
|
63
|
-
var onReleaseHandler = React.useCallback(function (eventData) {
|
|
64
|
-
var event = eventData.event;
|
|
65
|
-
var _a = dragStartRef.current, clientX = _a.clientX, clientY = _a.clientY;
|
|
66
|
-
if (isPreventedRef.current || !draggableRef.current) {
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
var currentDocument = draggableRef.current.element && draggableRef.current.element.ownerDocument;
|
|
70
|
-
if (!currentDocument) {
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
if (!isDraggedRef.current) {
|
|
74
|
-
var startElement = currentDocument.elementFromPoint(clientX, clientY);
|
|
75
|
-
if (!startElement) {
|
|
76
|
-
return;
|
|
77
|
-
}
|
|
78
|
-
var tdElement = closestTagName(startElement, 'TD');
|
|
79
|
-
var trElement = closestTagName(startElement, 'TR');
|
|
80
|
-
var colIndex = getColumnIndex(tdElement);
|
|
81
|
-
var rowIndex = getRowIndex(trElement);
|
|
82
|
-
if (tdElement && trElement && rowIndex !== undefined && colIndex !== undefined) {
|
|
83
|
-
onRelease({
|
|
84
|
-
nativeEvent: event.originalEvent,
|
|
85
|
-
startRowIndex: rowIndex,
|
|
86
|
-
startColIndex: colIndex,
|
|
87
|
-
endRowIndex: rowIndex,
|
|
88
|
-
endColIndex: colIndex,
|
|
89
|
-
altKey: event.altKey,
|
|
90
|
-
shiftKey: event.shiftKey,
|
|
91
|
-
ctrlKey: event.ctrlKey,
|
|
92
|
-
metaKey: event.metaKey,
|
|
93
|
-
mode: selectionMode,
|
|
94
|
-
cell: selectionCell,
|
|
95
|
-
isDrag: false
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
var top_1 = Math.min(clientY, event.clientY);
|
|
101
|
-
var left = Math.min(clientX, event.clientX);
|
|
102
|
-
var bottom = Math.max(clientY, event.clientY);
|
|
103
|
-
var right = Math.max(clientX, event.clientX);
|
|
104
|
-
var overlayElement = overlayElementRef.current;
|
|
105
|
-
if (!overlayElement) {
|
|
106
|
-
return;
|
|
107
|
-
}
|
|
108
|
-
overlayElement.style.visibility = 'hidden';
|
|
109
|
-
var startElement = currentDocument.elementFromPoint(left, top_1);
|
|
110
|
-
var endElement = currentDocument.elementFromPoint(right, bottom);
|
|
111
|
-
overlayElement.style.visibility = '';
|
|
112
|
-
if (!startElement || !endElement) {
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
var startTdElement = closestTagName(startElement, 'TD');
|
|
116
|
-
var startTrElement = closestTagName(startTdElement, 'TR');
|
|
117
|
-
var endTdElement = closestTagName(endElement, 'TD');
|
|
118
|
-
var endTrElement = closestTagName(endTdElement, 'TR');
|
|
119
|
-
var startColIndex = getColumnIndex(startTdElement);
|
|
120
|
-
var startRowIndex = getRowIndex(startTrElement);
|
|
121
|
-
var endColIndex = getColumnIndex(endTdElement);
|
|
122
|
-
var endRowIndex = getRowIndex(endTrElement);
|
|
123
|
-
if (startColIndex !== undefined &&
|
|
124
|
-
startRowIndex !== undefined &&
|
|
125
|
-
endColIndex !== undefined &&
|
|
126
|
-
endRowIndex !== undefined) {
|
|
127
|
-
onRelease({
|
|
128
|
-
nativeEvent: event.originalEvent,
|
|
129
|
-
startRowIndex: startRowIndex,
|
|
130
|
-
startColIndex: startColIndex,
|
|
131
|
-
endRowIndex: endRowIndex,
|
|
132
|
-
endColIndex: endColIndex,
|
|
133
|
-
altKey: event.altKey,
|
|
134
|
-
shiftKey: event.shiftKey,
|
|
135
|
-
ctrlKey: event.ctrlKey,
|
|
136
|
-
metaKey: event.metaKey,
|
|
137
|
-
mode: selectionMode,
|
|
138
|
-
cell: selectionCell,
|
|
139
|
-
isDrag: true
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
setOverlaySettings(null);
|
|
144
|
-
isDraggedRef.current = false;
|
|
145
|
-
dragStartRef.current = { clientX: 0, clientY: 0 };
|
|
146
|
-
}, [setOverlaySettings, selectionMode, selectionCell, onRelease]);
|
|
147
|
-
var getDocument = useDocument(overlayElementRef);
|
|
148
|
-
if (!selectionEnabled) {
|
|
149
|
-
return (React.cloneElement(React.Children.only(props.children), { ref: childRef }));
|
|
150
|
-
}
|
|
151
|
-
return (React.createElement(React.Fragment, null,
|
|
152
|
-
React.createElement(Draggable, { onPress: onPressHandler, onDrag: onDragHandler, onRelease: onReleaseHandler, ref: draggableRef, childRef: childRef }, props.children),
|
|
153
|
-
overlaySettings &&
|
|
154
|
-
ReactDOM.createPortal(React.createElement("div", { ref: overlayElementRef, style: __assign(__assign({}, overlaySettings), { position: 'fixed' }), className: 'k-marquee k-marquee-color' }), (_a = getDocument()) === null || _a === void 0 ? void 0 : _a.body)));
|
|
155
|
-
};
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/** @hidden */
|
|
2
|
-
export declare const TABLE_ROW_INDEX_ATTRIBUTE = "data-grid-row-index";
|
|
3
|
-
/** @hidden */
|
|
4
|
-
export declare const TABLE_COL_INDEX_ATTRIBUTE = "data-grid-col-index";
|
|
5
|
-
/** @hidden */
|
|
6
|
-
export declare const TABLE_PREVENT_SELECTION_ELEMENT = "data-prevent-selection";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,237 +0,0 @@
|
|
|
1
|
-
var __assign = (this && this.__assign) || function () {
|
|
2
|
-
__assign = Object.assign || function(t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
-
t[p] = s[p];
|
|
7
|
-
}
|
|
8
|
-
return t;
|
|
9
|
-
};
|
|
10
|
-
return __assign.apply(this, arguments);
|
|
11
|
-
};
|
|
12
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
13
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
14
|
-
if (ar || !(i in from)) {
|
|
15
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
16
|
-
ar[i] = from[i];
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
20
|
-
};
|
|
21
|
-
import { extendDataItem, getter, Keys, mapTree, hasRelativeStackingContext } from '@progress/kendo-react-common';
|
|
22
|
-
import { TABLE_COL_INDEX_ATTRIBUTE, TABLE_ROW_INDEX_ATTRIBUTE } from './constants';
|
|
23
|
-
var GROUP_SUBITEMS_COLLECTION = 'items';
|
|
24
|
-
var LAST_SELECTION_STATE = {};
|
|
25
|
-
var getCellSelection = function (currentSelection, selectedColumn) {
|
|
26
|
-
if (!currentSelection || (Array.isArray(currentSelection) && currentSelection.length === 0)) {
|
|
27
|
-
return [selectedColumn];
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
var foundIndex = currentSelection.findIndex(function (columnIndex) { return columnIndex === selectedColumn; });
|
|
31
|
-
if (foundIndex > -1) {
|
|
32
|
-
return currentSelection.filter(function (columnIndex) { return columnIndex !== selectedColumn; });
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
return __spreadArray(__spreadArray([], currentSelection, true), [selectedColumn], false);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
/** @hidden */
|
|
40
|
-
export var closestTagName = function (target, tagName) {
|
|
41
|
-
var currentTarget = target;
|
|
42
|
-
while (currentTarget) {
|
|
43
|
-
if (currentTarget.tagName === tagName) {
|
|
44
|
-
return currentTarget;
|
|
45
|
-
}
|
|
46
|
-
else if (currentTarget.tagName === 'TABLE') {
|
|
47
|
-
return null;
|
|
48
|
-
}
|
|
49
|
-
currentTarget = currentTarget.parentElement;
|
|
50
|
-
}
|
|
51
|
-
return null;
|
|
52
|
-
};
|
|
53
|
-
/** @hidden */
|
|
54
|
-
export var getRowIndex = function (element) {
|
|
55
|
-
if (!element) {
|
|
56
|
-
return;
|
|
57
|
-
}
|
|
58
|
-
var rowIndex = element.getAttribute(TABLE_ROW_INDEX_ATTRIBUTE);
|
|
59
|
-
return rowIndex ? parseInt(rowIndex, 10) : undefined;
|
|
60
|
-
};
|
|
61
|
-
/** @hidden */
|
|
62
|
-
export var getColumnIndex = function (element) {
|
|
63
|
-
if (!element) {
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
var colIndex = element.getAttribute(TABLE_COL_INDEX_ATTRIBUTE);
|
|
67
|
-
return colIndex ? parseInt(colIndex, 10) : undefined;
|
|
68
|
-
};
|
|
69
|
-
/**
|
|
70
|
-
* @hidden
|
|
71
|
-
*
|
|
72
|
-
* Apply the selected field to the data items based on the selected state.
|
|
73
|
-
*
|
|
74
|
-
* @param {{data: any, selectedState: {[id: string]: boolean | number[]}, dataItemKey: string; selectedField: string; subItemsField?: string; }} options
|
|
75
|
-
* @returns {any[]}
|
|
76
|
-
*/
|
|
77
|
-
export var setSelectedState = function (options) {
|
|
78
|
-
var subItemsField = options.subItemsField || GROUP_SUBITEMS_COLLECTION;
|
|
79
|
-
var idGetter = getter(options.dataItemKey);
|
|
80
|
-
return mapTree(options.data, subItemsField, function (item) {
|
|
81
|
-
var _a;
|
|
82
|
-
return extendDataItem(item, subItemsField, (_a = {},
|
|
83
|
-
_a[options.selectedField] = options.selectedState[idGetter(item)],
|
|
84
|
-
_a));
|
|
85
|
-
});
|
|
86
|
-
};
|
|
87
|
-
/**
|
|
88
|
-
* Get selected state from the component KeyDown event.
|
|
89
|
-
*
|
|
90
|
-
* @param {{event: TableKeyDownEvent, selectedState: {[id: string]: boolean | number[]}, dataItemKey: string}} options
|
|
91
|
-
* @returns {{[id: string]: boolean | number[]}} - The new selected state.
|
|
92
|
-
*/
|
|
93
|
-
export var getSelectedStateFromKeyDown = function (options) {
|
|
94
|
-
var event = options.event, dataItemKey = options.dataItemKey, selectedState = options.selectedState;
|
|
95
|
-
var syntheticEvent = event.syntheticEvent, nativeEvent = event.nativeEvent, dataItems = event.dataItems, componentId = event.componentId, mode = event.mode, cell = event.cell, selectedField = event.selectedField;
|
|
96
|
-
var target = nativeEvent.target, ctrlKey = nativeEvent.ctrlKey, metaKey = nativeEvent.metaKey, altKey = nativeEvent.altKey, shiftKey = nativeEvent.shiftKey;
|
|
97
|
-
if (syntheticEvent.isDefaultPrevented() || nativeEvent.keyCode !== Keys.enter) {
|
|
98
|
-
return selectedState;
|
|
99
|
-
}
|
|
100
|
-
var tdElement = closestTagName(target, 'TD');
|
|
101
|
-
var trElement = closestTagName(target, 'TR');
|
|
102
|
-
var colIndex = getColumnIndex(tdElement);
|
|
103
|
-
var rowIndex = getRowIndex(trElement);
|
|
104
|
-
var selectionState = {};
|
|
105
|
-
if (tdElement && trElement && rowIndex !== undefined && colIndex !== undefined) {
|
|
106
|
-
selectionState = getSelectedState({
|
|
107
|
-
selectedState: selectedState,
|
|
108
|
-
dataItemKey: dataItemKey,
|
|
109
|
-
event: {
|
|
110
|
-
ctrlKey: ctrlKey,
|
|
111
|
-
metaKey: metaKey,
|
|
112
|
-
altKey: altKey,
|
|
113
|
-
shiftKey: shiftKey,
|
|
114
|
-
dataItems: dataItems,
|
|
115
|
-
cell: cell,
|
|
116
|
-
mode: mode,
|
|
117
|
-
selectedField: selectedField,
|
|
118
|
-
componentId: componentId,
|
|
119
|
-
startColIndex: colIndex, endColIndex: colIndex, startRowIndex: rowIndex, endRowIndex: rowIndex,
|
|
120
|
-
isDrag: false,
|
|
121
|
-
syntheticEvent: syntheticEvent,
|
|
122
|
-
nativeEvent: nativeEvent,
|
|
123
|
-
target: event.target,
|
|
124
|
-
dataItem: null
|
|
125
|
-
}
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
return selectionState;
|
|
129
|
-
};
|
|
130
|
-
/**
|
|
131
|
-
* Get selected state from the component selection event.
|
|
132
|
-
*
|
|
133
|
-
* @param {{event: TableSelectionChangeEvent, selectedState: {[id: string]: boolean | number[]}, dataItemKey: string}} options
|
|
134
|
-
* @returns {{[id: string]: boolean | number[]}} - The new selected state.
|
|
135
|
-
*/
|
|
136
|
-
export var getSelectedState = function (options) {
|
|
137
|
-
var event = options.event, dataItemKey = options.dataItemKey, prevSelectedState = options.selectedState;
|
|
138
|
-
var dataItems = event.dataItems, startRowIndex = event.startRowIndex, endRowIndex = event.endRowIndex, startColIndex = event.startColIndex, endColIndex = event.endColIndex, cell = event.cell, isDrag = event.isDrag, ctrlKey = event.ctrlKey, shiftKey = event.shiftKey, metaKey = event.metaKey, componentId = event.componentId, mode = event.mode, dataItem = event.dataItem;
|
|
139
|
-
var idGetter = getter(dataItemKey);
|
|
140
|
-
var selectionState = {};
|
|
141
|
-
var isInputEvent = dataItem !== null;
|
|
142
|
-
if (mode === 'single') {
|
|
143
|
-
var currentDataItem = dataItems.slice(startRowIndex, startRowIndex + 1)[0];
|
|
144
|
-
var itemId = idGetter(currentDataItem);
|
|
145
|
-
LAST_SELECTION_STATE[componentId] = {
|
|
146
|
-
rowIndex: startRowIndex,
|
|
147
|
-
colIndex: startColIndex
|
|
148
|
-
};
|
|
149
|
-
selectionState[itemId] = cell ? [startColIndex] : true;
|
|
150
|
-
}
|
|
151
|
-
else if (isDrag || (!shiftKey && !ctrlKey && !metaKey && !isInputEvent)) {
|
|
152
|
-
if (!isDrag) {
|
|
153
|
-
LAST_SELECTION_STATE[componentId] = {
|
|
154
|
-
rowIndex: startRowIndex,
|
|
155
|
-
colIndex: startColIndex
|
|
156
|
-
};
|
|
157
|
-
}
|
|
158
|
-
var selectedColumns_1 = [];
|
|
159
|
-
for (var i = startColIndex; i <= endColIndex; i++) {
|
|
160
|
-
selectedColumns_1.push(i);
|
|
161
|
-
}
|
|
162
|
-
var selectedDataItems = dataItems.slice(startRowIndex, endRowIndex + 1);
|
|
163
|
-
selectedDataItems.forEach(function (currentItem) {
|
|
164
|
-
var itemId = idGetter(currentItem);
|
|
165
|
-
selectionState[itemId] = cell ? __spreadArray([], selectedColumns_1, true) : true;
|
|
166
|
-
});
|
|
167
|
-
}
|
|
168
|
-
else {
|
|
169
|
-
if (ctrlKey || metaKey || isInputEvent) {
|
|
170
|
-
LAST_SELECTION_STATE[componentId] = {
|
|
171
|
-
rowIndex: startRowIndex,
|
|
172
|
-
colIndex: startColIndex
|
|
173
|
-
};
|
|
174
|
-
var selectedDataItems = dataItems.slice(startRowIndex, endRowIndex + 1);
|
|
175
|
-
var currentDataItem = selectedDataItems[0];
|
|
176
|
-
var itemId = idGetter(currentDataItem);
|
|
177
|
-
selectionState = __assign({}, prevSelectedState);
|
|
178
|
-
selectionState[itemId] = cell && !isInputEvent ? getCellSelection(selectionState[itemId], startColIndex) : !selectionState[itemId];
|
|
179
|
-
}
|
|
180
|
-
else if (shiftKey) {
|
|
181
|
-
var lastRowIndex = (LAST_SELECTION_STATE[componentId] && LAST_SELECTION_STATE[componentId].rowIndex) || 0;
|
|
182
|
-
var lastColIndex = (LAST_SELECTION_STATE[componentId] && LAST_SELECTION_STATE[componentId].colIndex) || 0;
|
|
183
|
-
var currentStartRowIndex = Math.min(lastRowIndex, startRowIndex, endRowIndex);
|
|
184
|
-
var currentEndRowIndex = Math.max(lastRowIndex, startRowIndex, endRowIndex);
|
|
185
|
-
var currentStarColIndex = Math.min(lastColIndex, startColIndex, endColIndex);
|
|
186
|
-
var currentEndColIndex = Math.max(lastColIndex, startColIndex, endColIndex);
|
|
187
|
-
var selectedColumns_2 = [];
|
|
188
|
-
for (var i = currentStarColIndex; i <= currentEndColIndex; i++) {
|
|
189
|
-
selectedColumns_2.push(i);
|
|
190
|
-
}
|
|
191
|
-
var selectedDataItems = dataItems.slice(currentStartRowIndex, currentEndRowIndex + 1);
|
|
192
|
-
selectedDataItems.forEach(function (currentItem) {
|
|
193
|
-
var itemId = idGetter(currentItem);
|
|
194
|
-
selectionState[itemId] = cell ? __spreadArray([], selectedColumns_2, true) : true;
|
|
195
|
-
});
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
return selectionState;
|
|
199
|
-
};
|
|
200
|
-
/** @hidden */
|
|
201
|
-
var HAS_RELATIVE_STACKING_CONTEXT = hasRelativeStackingContext();
|
|
202
|
-
/** @hidden */
|
|
203
|
-
export var relativeContextElement = function (element) {
|
|
204
|
-
if (!element || !HAS_RELATIVE_STACKING_CONTEXT) {
|
|
205
|
-
return null;
|
|
206
|
-
}
|
|
207
|
-
var node = element.parentElement;
|
|
208
|
-
while (node) {
|
|
209
|
-
if (window.getComputedStyle(node).transform !== 'none') {
|
|
210
|
-
return node;
|
|
211
|
-
}
|
|
212
|
-
node = node.parentElement;
|
|
213
|
-
}
|
|
214
|
-
};
|
|
215
|
-
/** @hidden */
|
|
216
|
-
export var getOffset = function (offsetParent) {
|
|
217
|
-
if (offsetParent && offsetParent.ownerDocument) {
|
|
218
|
-
if (offsetParent !== offsetParent.ownerDocument.body) {
|
|
219
|
-
var rect = offsetParent.getBoundingClientRect();
|
|
220
|
-
return {
|
|
221
|
-
left: rect.left - offsetParent.scrollLeft,
|
|
222
|
-
top: rect.top - offsetParent.scrollTop
|
|
223
|
-
};
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
return { left: 0, top: 0 };
|
|
227
|
-
};
|
|
228
|
-
/** @hidden */
|
|
229
|
-
export var getSelectionOptions = function (selectable) {
|
|
230
|
-
var enabled = selectable ?
|
|
231
|
-
(typeof selectable.enabled === 'boolean' ? selectable.enabled : true) :
|
|
232
|
-
false;
|
|
233
|
-
var drag = selectable ? Boolean(selectable.drag) : false;
|
|
234
|
-
var mode = selectable && selectable.mode ? selectable.mode : 'multiple';
|
|
235
|
-
var cell = Boolean(selectable && selectable.cell);
|
|
236
|
-
return { enabled: enabled, drag: drag, mode: mode, cell: cell };
|
|
237
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { SortDescriptor, FilterDescriptor, CompositeFilterDescriptor } from '@progress/kendo-data-query';
|
|
2
|
-
import { DataItemWrapper } from './DataItemWrapper';
|
|
3
|
-
/**
|
|
4
|
-
* Orders the specified tree according to the provided sort descriptors.
|
|
5
|
-
*
|
|
6
|
-
* @param {T[]} data - The data that will be sorted.
|
|
7
|
-
* @param {SortDescriptor[]} descriptors - The descriptors by which the data will be sorted.
|
|
8
|
-
* @param {string} subItemsField - The field which points to the subitems collection of each data item.
|
|
9
|
-
* @returns {T[]} - The sorted data.
|
|
10
|
-
*/
|
|
11
|
-
export declare function orderBy(data: any[], descriptors: SortDescriptor[], subItemsField: string): any[];
|
|
12
|
-
/**
|
|
13
|
-
* Filters the provided data tree according to the specified `Array<FilterDescriptor|CompositeFilterDescriptor>`.
|
|
14
|
-
*
|
|
15
|
-
* @param {T[]} data - The data that will be filtered.
|
|
16
|
-
* @param {FilterDescriptor[]|CompositeFilterDescriptor[]} descriptors - The filter criteria that will be applied.
|
|
17
|
-
* @param {string} subItemsField - The field which points to the subitems collection of each data item.
|
|
18
|
-
* @returns {T[]} - The filtered data.
|
|
19
|
-
*/
|
|
20
|
-
export declare function filterBy(data: any[], descriptors: FilterDescriptor[] | CompositeFilterDescriptor[], subItemsField: string): any[];
|
|
21
|
-
/**
|
|
22
|
-
* @hidden
|
|
23
|
-
*/
|
|
24
|
-
export declare function flatData(data: any[], getChildren: (dataItem: any) => any[], itemMap: (item: any) => any): DataItemWrapper[];
|
|
25
|
-
/**
|
|
26
|
-
* Creates a flat data array from the passed tree dataset.
|
|
27
|
-
*
|
|
28
|
-
* @param {object[]} dataset - The source dataset of data items.
|
|
29
|
-
* @param {string} expandField - The field which points to the expanded value of each data item.
|
|
30
|
-
* @param {string} subItemsField - The field which points to the subitems collection of each data item.
|
|
31
|
-
* @returns {object[]} - A collection of the generated data items that are in a flat structure.
|
|
32
|
-
*/
|
|
33
|
-
export declare const treeToFlat: (data: any[], expandField: string, subItemsField: string) => any[];
|
|
34
|
-
/**
|
|
35
|
-
* Creates a tree from the passed dataset.
|
|
36
|
-
*
|
|
37
|
-
* @param {object[]} dataset - The source dataset of data items.
|
|
38
|
-
* @param {(item: object) => any} getId - A function which will return the id of the data item.
|
|
39
|
-
* @param {(item: object) => any} getParentId - A function which will return the data item id of its parent data item.
|
|
40
|
-
* @param {string} subItemsField - The field which points to the subitems collection of each data item.
|
|
41
|
-
* @returns {object[]} - A collection of the generated data items that are structured in a tree.
|
|
42
|
-
*/
|
|
43
|
-
export declare const createDataTree: (dataset: any[], getId: (item: any) => any, getParentId: (item: any) => any, subItemsField: string) => any[];
|
|
44
|
-
/**
|
|
45
|
-
* Similar to the `Object.assign` function. Additionally, creates a new array for the subitems.
|
|
46
|
-
*
|
|
47
|
-
* @param {object} item - The source data item.
|
|
48
|
-
* @param {string} subItemsField - The field which points to the subitems collection of each data item.
|
|
49
|
-
* @param {object} propsToExtend - The props with which the source data item will be extended.
|
|
50
|
-
* @returns {object} - The target data item.
|
|
51
|
-
*/
|
|
52
|
-
export declare const extendDataItem: (item: any, subItemsField: string, propsToExtend?: any) => any;
|
|
53
|
-
/**
|
|
54
|
-
* Removes the items from the passed `data` which match the passed `condition`.
|
|
55
|
-
*
|
|
56
|
-
* @param {any[]} data - The data tree.
|
|
57
|
-
* @param {string} subItemsField - The field which points to the subitems collection of each data item.
|
|
58
|
-
* @param {(item: object) => Boolean} condition - A function that will be executed for each data item
|
|
59
|
-
* in the tree data and the items for which returns true will be removed.
|
|
60
|
-
* @returns {any[]} - The new data tree.
|
|
61
|
-
*/
|
|
62
|
-
export declare const removeItems: (data: any[], subItemsField: string, condition: (item: any) => boolean) => any[];
|
|
63
|
-
/**
|
|
64
|
-
* Changes the `subItems` collection of each data item which matches the passed `condition`.
|
|
65
|
-
*
|
|
66
|
-
* @param {any[]} data - The data tree.
|
|
67
|
-
* @param {string} subItemsField - The field which points to the subitems collection of each data item.
|
|
68
|
-
* @param {(item: object) => Boolean} condition - A function that will be executed for each data item and
|
|
69
|
-
* will return `true` for items that have to change the subitems collection.
|
|
70
|
-
* @param {(subItems: object[]) => object[]} change - A function which
|
|
71
|
-
* has as a parameter the subitems collection of the matched items and which will return the new subitems collection.
|
|
72
|
-
* @returns {any[]} - The new data tree.
|
|
73
|
-
*/
|
|
74
|
-
export declare const modifySubItems: (data: any[], subItemsField: string, condition: (item: any) => boolean, change: (subItems: any[]) => any[]) => any[];
|
|
75
|
-
/**
|
|
76
|
-
* Returns the data item path in the tree based on the level parameter.
|
|
77
|
-
*
|
|
78
|
-
* @param {any[]} tree - The data tree.
|
|
79
|
-
* @param {number[]} level - The level of the target tree item.
|
|
80
|
-
* @param {string} subItemsField - The field which points to the subitems collection of each data item.
|
|
81
|
-
* @returns {any[]} - The path of the data item.
|
|
82
|
-
*/
|
|
83
|
-
export declare const getItemPath: (tree: any[], level: number[], subItemsField?: string) => any[];
|
|
84
|
-
/**
|
|
85
|
-
* Moves the targeted item in the tree to another position.
|
|
86
|
-
*
|
|
87
|
-
* @param {any[]} data - The data tree.
|
|
88
|
-
* @param {number[]} target - The level of the target tree item which will be moved.
|
|
89
|
-
* @param {number[] | null} destination - The level of the destination tree item where the target item will be moved in.
|
|
90
|
-
* If it is null, the target item will be added at the root level.
|
|
91
|
-
* @param {string} subItemsField - The field which points to the subitems collection of each data item.
|
|
92
|
-
* @returns {any[]} - The new data tree.
|
|
93
|
-
*/
|
|
94
|
-
export declare const moveTreeItem: (data: any[], target: number[], destination: number[] | null, subItemsField: string) => any[];
|