@reltio/components 1.4.1999 → 1.4.2001
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/cjs/RCTree/RCTree.d.ts +17 -14
- package/cjs/RCTree/RCTree.js +24 -8
- package/cjs/RCTree/RCTreeLevelLines.d.ts +4 -0
- package/cjs/RCTree/RCTreeLevelLines.js +32 -0
- package/cjs/RCTree/RCTreeSwitchRenderer.d.ts +7 -0
- package/cjs/RCTree/{DefaultSwitchRenderer.js → RCTreeSwitchRenderer.js} +3 -3
- package/cjs/RCTree/helper.d.ts +10 -5
- package/cjs/RCTree/helper.js +49 -3
- package/cjs/RCTree/index.d.ts +2 -0
- package/cjs/RCTree/index.js +5 -1
- package/cjs/RCTree/levelLinesStyles.d.ts +5 -0
- package/cjs/RCTree/levelLinesStyles.js +53 -0
- package/cjs/RCTree/styles.d.ts +1 -1
- package/cjs/RCTree/styles.js +63 -30
- package/cjs/RCTree/types.d.ts +3 -2
- package/cjs/RCTree/useDnd.d.ts +16 -16
- package/cjs/features/crosswalks/AttributesTable/AttributesTable.test-data.d.ts +36 -0
- package/cjs/features/crosswalks/AttributesTable/AttributesTable.test-data.js +288 -0
- package/cjs/features/crosswalks/AttributesTable/AttributesTable.test.js +708 -370
- package/cjs/features/crosswalks/ColoredBlock/ColoredBlock.test.js +77 -15
- package/cjs/features/crosswalks/CopyableValueField/CopyableValueField.test.js +85 -15
- package/cjs/features/crosswalks/CrosswalkAttributes/CrosswalkAttributes.test.js +265 -193
- package/cjs/features/crosswalks/CrosswalkDateEditor/CrosswalkDateEditor.test.js +106 -12
- package/cjs/features/crosswalks/CrosswalkDragLayer/CrosswalkDragLayer.test.js +21 -9
- package/cjs/features/crosswalks/CrosswalkEditor/CrosswalkEditor.test.js +190 -90
- package/cjs/features/crosswalks/CrosswalkRow/CrosswalkRow.test.js +323 -225
- package/cjs/features/crosswalks/ShowDependentLink/ShowDependentLink.test.js +75 -12
- package/cjs/features/crosswalks/SourceCrosswalksRow/SourceCrosswalksRow.test.js +171 -138
- package/cjs/index.d.ts +1 -1
- package/cjs/index.js +6 -4
- package/esm/RCTree/RCTree.d.ts +17 -14
- package/esm/RCTree/RCTree.js +26 -10
- package/esm/RCTree/RCTreeLevelLines.d.ts +4 -0
- package/esm/RCTree/RCTreeLevelLines.js +25 -0
- package/esm/RCTree/RCTreeSwitchRenderer.d.ts +7 -0
- package/esm/RCTree/{DefaultSwitchRenderer.js → RCTreeSwitchRenderer.js} +1 -1
- package/esm/RCTree/helper.d.ts +10 -5
- package/esm/RCTree/helper.js +44 -1
- package/esm/RCTree/index.d.ts +2 -0
- package/esm/RCTree/index.js +2 -0
- package/esm/RCTree/levelLinesStyles.d.ts +5 -0
- package/esm/RCTree/levelLinesStyles.js +50 -0
- package/esm/RCTree/styles.d.ts +1 -1
- package/esm/RCTree/styles.js +63 -30
- package/esm/RCTree/types.d.ts +3 -2
- package/esm/RCTree/useDnd.d.ts +16 -16
- package/esm/features/crosswalks/AttributesTable/AttributesTable.test-data.d.ts +36 -0
- package/esm/features/crosswalks/AttributesTable/AttributesTable.test-data.js +283 -0
- package/esm/features/crosswalks/AttributesTable/AttributesTable.test.js +711 -350
- package/esm/features/crosswalks/ColoredBlock/ColoredBlock.test.js +77 -15
- package/esm/features/crosswalks/CopyableValueField/CopyableValueField.test.js +85 -15
- package/esm/features/crosswalks/CrosswalkAttributes/CrosswalkAttributes.test.js +266 -194
- package/esm/features/crosswalks/CrosswalkDateEditor/CrosswalkDateEditor.test.js +106 -12
- package/esm/features/crosswalks/CrosswalkDragLayer/CrosswalkDragLayer.test.js +21 -9
- package/esm/features/crosswalks/CrosswalkEditor/CrosswalkEditor.test.js +190 -90
- package/esm/features/crosswalks/CrosswalkRow/CrosswalkRow.test.js +324 -226
- package/esm/features/crosswalks/ShowDependentLink/ShowDependentLink.test.js +75 -12
- package/esm/features/crosswalks/SourceCrosswalksRow/SourceCrosswalksRow.test.js +171 -138
- package/esm/index.d.ts +1 -1
- package/esm/index.js +1 -1
- package/package.json +1 -1
- package/cjs/RCTree/DefaultSwitchRenderer.d.ts +0 -7
- package/cjs/features/crosswalks/AttributesTable/IntegrationAttributesTable.test-data.d.ts +0 -3
- package/cjs/features/crosswalks/AttributesTable/IntegrationAttributesTable.test-data.js +0 -52
- package/cjs/features/crosswalks/AttributesTable/IntegrationAttributesTable.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/IntegrationAttributesTable.test.js +0 -323
- package/cjs/features/crosswalks/AttributesTable/components/AddAttributesButton/AddAttributesButton.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/AddAttributesButton/AddAttributesButton.test.js +0 -142
- package/cjs/features/crosswalks/AttributesTable/components/AttributeValuesRenderer/AttributeValuesRenderer.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/AttributeValuesRenderer/AttributeValuesRenderer.test.js +0 -146
- package/cjs/features/crosswalks/AttributesTable/components/AttributesHeadCellRenderer/AttributesHeadCellRenderer.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/AttributesHeadCellRenderer/AttributesHeadCellRenderer.test.js +0 -50
- package/cjs/features/crosswalks/AttributesTable/components/ConfirmEditIgnoredDialog/ConfirmEditIgnoredDialog.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/ConfirmEditIgnoredDialog/ConfirmEditIgnoredDialog.test.js +0 -58
- package/cjs/features/crosswalks/AttributesTable/components/CountRenderer/CountRenderer.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/CountRenderer/CountRenderer.test.js +0 -14
- package/cjs/features/crosswalks/AttributesTable/components/ImageAttributesRenderer/ImageAttributesRenderer.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/ImageAttributesRenderer/ImageAttributesRenderer.test.js +0 -110
- package/cjs/features/crosswalks/AttributesTable/components/NestedAttributesRenderer/NestedAttributesRenderer.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/NestedAttributesRenderer/NestedAttributesRenderer.test.js +0 -111
- package/cjs/features/crosswalks/AttributesTable/components/OvValuesRenderer/OvValuesRenderer.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/OvValuesRenderer/OvValuesRenderer.test.js +0 -67
- package/cjs/features/crosswalks/AttributesTable/components/ReferenceAttributesRenderer/ReferenceAttributesRenderer.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/ReferenceAttributesRenderer/ReferenceAttributesRenderer.test.js +0 -193
- package/cjs/features/crosswalks/AttributesTable/components/RuleTypeInfoButton/RuleTypeInfoButton.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/RuleTypeInfoButton/RuleTypeInfoButton.test.js +0 -22
- package/cjs/features/crosswalks/AttributesTable/components/RuleTypeRenderer/RuleTypeRenderer.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/RuleTypeRenderer/RuleTypeRenderer.test.js +0 -58
- package/cjs/features/crosswalks/AttributesTable/components/SimpleAttributesRenderer/SimpleAttributesRenderer.test.d.ts +0 -1
- package/cjs/features/crosswalks/AttributesTable/components/SimpleAttributesRenderer/SimpleAttributesRenderer.test.js +0 -69
- package/cjs/features/crosswalks/CrosswalkDateEditor/IntegrationCrosswalkDateEditor.test.d.ts +0 -1
- package/cjs/features/crosswalks/CrosswalkDateEditor/IntegrationCrosswalkDateEditor.test.js +0 -137
- package/cjs/features/crosswalks/CrosswalkDragLayer/components/CrosswalkDragPreview/CrosswalkDragPreview.test.d.ts +0 -1
- package/cjs/features/crosswalks/CrosswalkDragLayer/components/CrosswalkDragPreview/CrosswalkDragPreview.test.js +0 -56
- package/esm/RCTree/DefaultSwitchRenderer.d.ts +0 -7
- package/esm/features/crosswalks/AttributesTable/IntegrationAttributesTable.test-data.d.ts +0 -3
- package/esm/features/crosswalks/AttributesTable/IntegrationAttributesTable.test-data.js +0 -47
- package/esm/features/crosswalks/AttributesTable/IntegrationAttributesTable.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/IntegrationAttributesTable.test.js +0 -318
- package/esm/features/crosswalks/AttributesTable/components/AddAttributesButton/AddAttributesButton.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/AddAttributesButton/AddAttributesButton.test.js +0 -137
- package/esm/features/crosswalks/AttributesTable/components/AttributeValuesRenderer/AttributeValuesRenderer.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/AttributeValuesRenderer/AttributeValuesRenderer.test.js +0 -141
- package/esm/features/crosswalks/AttributesTable/components/AttributesHeadCellRenderer/AttributesHeadCellRenderer.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/AttributesHeadCellRenderer/AttributesHeadCellRenderer.test.js +0 -45
- package/esm/features/crosswalks/AttributesTable/components/ConfirmEditIgnoredDialog/ConfirmEditIgnoredDialog.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/ConfirmEditIgnoredDialog/ConfirmEditIgnoredDialog.test.js +0 -53
- package/esm/features/crosswalks/AttributesTable/components/CountRenderer/CountRenderer.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/CountRenderer/CountRenderer.test.js +0 -9
- package/esm/features/crosswalks/AttributesTable/components/ImageAttributesRenderer/ImageAttributesRenderer.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/ImageAttributesRenderer/ImageAttributesRenderer.test.js +0 -105
- package/esm/features/crosswalks/AttributesTable/components/NestedAttributesRenderer/NestedAttributesRenderer.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/NestedAttributesRenderer/NestedAttributesRenderer.test.js +0 -106
- package/esm/features/crosswalks/AttributesTable/components/OvValuesRenderer/OvValuesRenderer.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/OvValuesRenderer/OvValuesRenderer.test.js +0 -62
- package/esm/features/crosswalks/AttributesTable/components/ReferenceAttributesRenderer/ReferenceAttributesRenderer.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/ReferenceAttributesRenderer/ReferenceAttributesRenderer.test.js +0 -188
- package/esm/features/crosswalks/AttributesTable/components/RuleTypeInfoButton/RuleTypeInfoButton.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/RuleTypeInfoButton/RuleTypeInfoButton.test.js +0 -17
- package/esm/features/crosswalks/AttributesTable/components/RuleTypeRenderer/RuleTypeRenderer.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/RuleTypeRenderer/RuleTypeRenderer.test.js +0 -53
- package/esm/features/crosswalks/AttributesTable/components/SimpleAttributesRenderer/SimpleAttributesRenderer.test.d.ts +0 -1
- package/esm/features/crosswalks/AttributesTable/components/SimpleAttributesRenderer/SimpleAttributesRenderer.test.js +0 -64
- package/esm/features/crosswalks/CrosswalkDateEditor/IntegrationCrosswalkDateEditor.test.d.ts +0 -1
- package/esm/features/crosswalks/CrosswalkDateEditor/IntegrationCrosswalkDateEditor.test.js +0 -132
- package/esm/features/crosswalks/CrosswalkDragLayer/components/CrosswalkDragPreview/CrosswalkDragPreview.test.d.ts +0 -1
- package/esm/features/crosswalks/CrosswalkDragLayer/components/CrosswalkDragPreview/CrosswalkDragPreview.test.js +0 -28
package/cjs/RCTree/RCTree.d.ts
CHANGED
|
@@ -1,27 +1,30 @@
|
|
|
1
1
|
import { TreeNodeProps } from 'rc-tree';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import { RCTreeNode } from './types';
|
|
4
|
-
type Props = {
|
|
5
|
-
treeData:
|
|
6
|
-
renderNode?: (node:
|
|
3
|
+
import { InternalRCNode, RCTreeNode } from './types';
|
|
4
|
+
type Props<Node extends RCTreeNode> = {
|
|
5
|
+
treeData: Node[];
|
|
6
|
+
renderNode?: (node: Node) => React.ReactElement;
|
|
7
7
|
isVirtualized?: boolean;
|
|
8
8
|
canDrag?: (params: {
|
|
9
|
-
node:
|
|
9
|
+
node: Node;
|
|
10
10
|
}) => boolean;
|
|
11
11
|
canDrop?: (params: {
|
|
12
|
-
nextParent:
|
|
13
|
-
node:
|
|
12
|
+
nextParent: Node;
|
|
13
|
+
node: Node;
|
|
14
14
|
}) => boolean;
|
|
15
|
-
onDrop?: (treeData:
|
|
16
|
-
onLoadChildren?: (treeNode:
|
|
17
|
-
height?: number;
|
|
15
|
+
onDrop?: (treeData: Node[], dragNode: Node, parentNode: Node) => void;
|
|
16
|
+
onLoadChildren?: (treeNode: Node) => Promise<void>;
|
|
18
17
|
defaultExpandAll?: boolean;
|
|
19
|
-
SwitchRenderer?: (props:
|
|
18
|
+
SwitchRenderer?: (props: {
|
|
19
|
+
node: InternalRCNode<Node>;
|
|
20
|
+
}) => React.ReactElement;
|
|
21
|
+
LevelLinesRenderer?: (props: any) => React.ReactElement;
|
|
20
22
|
className?: string;
|
|
21
23
|
minItemHeight?: number;
|
|
22
24
|
isLeaf?: (node: TreeNodeProps & Record<string, unknown>) => boolean;
|
|
23
|
-
scrollToNode?:
|
|
24
|
-
onChange?: (node:
|
|
25
|
+
scrollToNode?: Node;
|
|
26
|
+
onChange?: (node: Node[]) => void;
|
|
27
|
+
height?: number;
|
|
25
28
|
};
|
|
26
|
-
export declare const RCTree: ({ treeData, isVirtualized, canDrag, canDrop, onDrop, onLoadChildren,
|
|
29
|
+
export declare const RCTree: <Node extends RCTreeNode>({ treeData, isVirtualized, canDrag, canDrop, onDrop, onLoadChildren, defaultExpandAll, SwitchRenderer, LevelLinesRenderer, className, renderNode, minItemHeight, isLeaf, scrollToNode, onChange, height }: Props<Node>) => React.JSX.Element;
|
|
27
30
|
export {};
|
package/cjs/RCTree/RCTree.js
CHANGED
|
@@ -43,24 +43,27 @@ var ramda_1 = require("ramda");
|
|
|
43
43
|
var rc_tree_1 = __importDefault(require("rc-tree"));
|
|
44
44
|
var react_1 = __importStar(require("react"));
|
|
45
45
|
var DragIndicator_1 = __importDefault(require("@mui/icons-material/DragIndicator"));
|
|
46
|
-
var
|
|
46
|
+
var react_resize_detector_1 = __importDefault(require("react-resize-detector"));
|
|
47
|
+
var RCTreeSwitchRenderer_1 = require("./RCTreeSwitchRenderer");
|
|
48
|
+
var RCTreeLevelLines_1 = require("./RCTreeLevelLines");
|
|
47
49
|
var helper_1 = require("./helper");
|
|
48
50
|
var useDnd_1 = require("./useDnd");
|
|
49
51
|
var styles_1 = require("./styles");
|
|
50
52
|
var MIN_ROW_HEIGHT = 28;
|
|
51
53
|
var RCTree = function (_a) {
|
|
52
54
|
var _b;
|
|
53
|
-
var treeData = _a.treeData, _c = _a.isVirtualized, isVirtualized = _c === void 0 ? true : _c, _d = _a.canDrag, canDrag = _d === void 0 ? function () { return false; } : _d, _e = _a.canDrop, canDrop = _e === void 0 ? function () { return false; } : _e, _f = _a.onDrop, onDrop = _f === void 0 ? function () { } : _f, onLoadChildren = _a.onLoadChildren,
|
|
55
|
+
var treeData = _a.treeData, _c = _a.isVirtualized, isVirtualized = _c === void 0 ? true : _c, _d = _a.canDrag, canDrag = _d === void 0 ? function () { return false; } : _d, _e = _a.canDrop, canDrop = _e === void 0 ? function () { return false; } : _e, _f = _a.onDrop, onDrop = _f === void 0 ? function () { } : _f, onLoadChildren = _a.onLoadChildren, _g = _a.defaultExpandAll, defaultExpandAll = _g === void 0 ? false : _g, _h = _a.SwitchRenderer, SwitchRenderer = _h === void 0 ? RCTreeSwitchRenderer_1.RCTreeSwitchRenderer : _h, _j = _a.LevelLinesRenderer, LevelLinesRenderer = _j === void 0 ? RCTreeLevelLines_1.RCTreeLevelLines : _j, className = _a.className, renderNode = _a.renderNode, _k = _a.minItemHeight, minItemHeight = _k === void 0 ? MIN_ROW_HEIGHT : _k, _l = _a.isLeaf, isLeaf = _l === void 0 ? helper_1.defaultIsLeaf : _l, scrollToNode = _a.scrollToNode, _m = _a.onChange, onChange = _m === void 0 ? ramda_1.identity : _m, height = _a.height;
|
|
54
56
|
var styles = (0, styles_1.useStyles)();
|
|
55
57
|
var treeRef = (0, react_1.useRef)(null);
|
|
56
58
|
var containerRef = (0, react_1.useRef)(null);
|
|
59
|
+
var _o = (0, react_1.useState)({ width: 0, height: 0 }), containerSize = _o[0], setContainerSize = _o[1];
|
|
57
60
|
var expandNode = (0, react_1.useCallback)(function (pos, expanded) {
|
|
58
61
|
var changeNode = (0, ramda_1.assoc)('expanded', expanded);
|
|
59
62
|
var newTreeData = (0, helper_1.changeNodeAtPosition)(treeData, pos, changeNode);
|
|
60
63
|
if (newTreeData)
|
|
61
64
|
onChange(newTreeData);
|
|
62
65
|
}, [onChange, treeData]);
|
|
63
|
-
var
|
|
66
|
+
var _p = (0, useDnd_1.useDnd)({
|
|
64
67
|
containerRef: containerRef,
|
|
65
68
|
treeData: treeData,
|
|
66
69
|
expandNode: expandNode,
|
|
@@ -69,7 +72,7 @@ var RCTree = function (_a) {
|
|
|
69
72
|
onDrop: onDrop,
|
|
70
73
|
canDrop: canDrop,
|
|
71
74
|
canDrag: canDrag
|
|
72
|
-
}), treeProps =
|
|
75
|
+
}), treeProps = _p.treeProps, nodeDraggable = _p.nodeDraggable, dropNode = _p.dropNode, dragNode = _p.dragNode, dropPositionInfo = _p.dropPositionInfo;
|
|
73
76
|
(0, react_1.useEffect)(function () {
|
|
74
77
|
if (treeRef.current && scrollToNode) {
|
|
75
78
|
treeRef.current.scrollTo({ key: String(scrollToNode.nodeId) });
|
|
@@ -84,9 +87,14 @@ var RCTree = function (_a) {
|
|
|
84
87
|
}
|
|
85
88
|
return treeData;
|
|
86
89
|
}, [treeData, dragNode, dropNode, dropPositionInfo]);
|
|
90
|
+
(0, react_1.useEffect)(function () {
|
|
91
|
+
if (isVirtualized)
|
|
92
|
+
(0, helper_1.setTreeWidth)(containerRef, diplayedTreeData);
|
|
93
|
+
}, [diplayedTreeData, isVirtualized]);
|
|
87
94
|
var expandedKeys = (0, react_1.useMemo)(function () {
|
|
88
95
|
return (0, helper_1.getExpandedKeys)(diplayedTreeData);
|
|
89
96
|
}, [diplayedTreeData]);
|
|
97
|
+
var levelLines = (0, react_1.useMemo)(function () { return (0, helper_1.getLevelLinesData)(diplayedTreeData); }, [diplayedTreeData]);
|
|
90
98
|
var internalTreeData = (0, react_1.useMemo)(function () { return (0, helper_1.convertTreeData)({ data: diplayedTreeData, isLeaf: isLeaf }); }, [isLeaf, diplayedTreeData]);
|
|
91
99
|
var handleExpand = (0, react_1.useCallback)(function (_expandedKeys, data) {
|
|
92
100
|
if (onChange && !dragNode) {
|
|
@@ -96,21 +104,29 @@ var RCTree = function (_a) {
|
|
|
96
104
|
var renderSwitcherIcon = (0, react_1.useCallback)(function (node) { return react_1.default.createElement(SwitchRenderer, { node: node }); }, []);
|
|
97
105
|
var titleRender = function (node) {
|
|
98
106
|
var _a;
|
|
107
|
+
var _b, _c;
|
|
99
108
|
var draggedNodes = (0, helper_1.gatherNodeKeys)(dragNode);
|
|
100
|
-
|
|
109
|
+
var width = (0, helper_1.calcNodeWidth)((_c = (_b = levelLines[node.key]) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.length, containerSize.width);
|
|
110
|
+
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(styles.titleWrapper, (_a = {},
|
|
101
111
|
_a[styles.dropIndicator] = (0, helper_1.isDropIndicatorNode)(node),
|
|
102
112
|
_a[styles.dropNotAllowed] = dropNode && !(0, helper_1.isDropIndicatorNode)(dropNode),
|
|
103
113
|
_a[styles.draggedChildrenNode] = draggedNodes.includes(node.key),
|
|
104
|
-
_a)), onMouseDown: helper_1.preventNodeDragging
|
|
114
|
+
_a)), onMouseDown: helper_1.preventNodeDragging, style: { width: width } },
|
|
115
|
+
react_1.default.createElement(LevelLinesRenderer, { levelLine: levelLines[node.key] }),
|
|
116
|
+
renderNode ? renderNode(node.value) : node.title));
|
|
105
117
|
};
|
|
106
118
|
var dragHandle = (react_1.default.createElement("span", { className: (0, classnames_1.default)(styles.dragHandle, (_b = {},
|
|
107
119
|
_b[styles.dragHandleDragging] = !!dragNode,
|
|
108
120
|
_b)) },
|
|
109
121
|
react_1.default.createElement(DragIndicator_1.default, null)));
|
|
110
|
-
|
|
122
|
+
var onContainerResize = (0, react_1.useCallback)(function (width, height) {
|
|
123
|
+
setContainerSize({ width: width, height: height });
|
|
124
|
+
}, []);
|
|
125
|
+
return diplayedTreeData ? (react_1.default.createElement("div", { ref: containerRef, className: (0, classnames_1.default)(styles.treeContainer) },
|
|
126
|
+
react_1.default.createElement(react_resize_detector_1.default, { handleWidth: true, handleHeight: true, onResize: onContainerResize }),
|
|
111
127
|
react_1.default.createElement(rc_tree_1.default, __assign({ draggable: {
|
|
112
128
|
icon: dragHandle,
|
|
113
129
|
nodeDraggable: nodeDraggable
|
|
114
|
-
}, virtual: isVirtualized, itemHeight: minItemHeight, height: height, onExpand: handleExpand, showIcon: false,
|
|
130
|
+
}, virtual: isVirtualized, itemHeight: minItemHeight, height: height || containerSize.height, onExpand: handleExpand, showIcon: false, switcherIcon: renderSwitcherIcon, defaultExpandAll: defaultExpandAll, expandedKeys: expandedKeys, className: (0, classnames_1.default)(className, styles.treeWrapper), titleRender: titleRender, treeData: internalTreeData, selectable: false, loadData: onLoadChildren ? function (node) { return onLoadChildren(node.value); } : undefined, "data-reltio-id": "rc-tree", ref: treeRef }, treeProps)))) : null;
|
|
115
131
|
};
|
|
116
132
|
exports.RCTree = RCTree;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.RCTreeLevelLines = void 0;
|
|
7
|
+
var react_1 = __importDefault(require("react"));
|
|
8
|
+
var classnames_1 = __importDefault(require("classnames"));
|
|
9
|
+
var helper_1 = require("./helper");
|
|
10
|
+
var levelLinesStyles_1 = require("./levelLinesStyles");
|
|
11
|
+
var LevelLine = function (_a) {
|
|
12
|
+
var _b;
|
|
13
|
+
var _c = _a.needDrawLine, needDrawLine = _c === void 0 ? false : _c, _d = _a.isLastLevelLine, isLastLevelLine = _d === void 0 ? false : _d, _e = _a.drawHorizontalLine, drawHorizontalLine = _e === void 0 ? false : _e;
|
|
14
|
+
var styles = (0, levelLinesStyles_1.useStyles)({});
|
|
15
|
+
return (react_1.default.createElement("div", { className: (0, classnames_1.default)(styles.levelLine, (_b = {},
|
|
16
|
+
_b[styles.showLine] = needDrawLine,
|
|
17
|
+
_b[styles.lastLevelLine] = isLastLevelLine,
|
|
18
|
+
_b[styles.horizontalLine] = drawHorizontalLine,
|
|
19
|
+
_b)) }));
|
|
20
|
+
};
|
|
21
|
+
var RCTreeLevelLines = function (_a) {
|
|
22
|
+
var levelLine = _a.levelLine;
|
|
23
|
+
var _b = levelLine || [], _c = _b[0], needDrawLines = _c === void 0 ? [] : _c, _d = _b[1], isLast = _d === void 0 ? false : _d;
|
|
24
|
+
var level = needDrawLines.length + 2;
|
|
25
|
+
var styles = (0, levelLinesStyles_1.useStyles)({ level: level });
|
|
26
|
+
return (react_1.default.createElement("div", { className: styles.levelLines, style: { left: "-".concat(helper_1.DEPTH_LEVEL_INDENT * level, "px") } }, needDrawLines
|
|
27
|
+
.map(function (needDrawLine, index) {
|
|
28
|
+
return react_1.default.createElement(LevelLine, { key: index, needDrawLine: needDrawLine });
|
|
29
|
+
})
|
|
30
|
+
.concat(react_1.default.createElement(LevelLine, { key: level, needDrawLine: true, drawHorizontalLine: true, isLastLevelLine: isLast }))));
|
|
31
|
+
};
|
|
32
|
+
exports.RCTreeLevelLines = RCTreeLevelLines;
|
|
@@ -3,14 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.RCTreeSwitchRenderer = void 0;
|
|
7
7
|
var react_1 = __importDefault(require("react"));
|
|
8
8
|
var classnames_1 = __importDefault(require("classnames"));
|
|
9
9
|
var styles_1 = require("./styles");
|
|
10
|
-
var
|
|
10
|
+
var RCTreeSwitchRenderer = function (_a) {
|
|
11
11
|
var node = _a.node;
|
|
12
12
|
var styles = (0, styles_1.useStyles)();
|
|
13
13
|
return !node.isLeaf ? (react_1.default.createElement("div", { className: styles.switcherButtonWrapper },
|
|
14
14
|
react_1.default.createElement("div", { "aria-label": node.expanded ? 'Collapse' : 'Expand', className: (0, classnames_1.default)(styles.switcherButton, node.expanded ? styles.collapseButton : styles.expandButton) }))) : null;
|
|
15
15
|
};
|
|
16
|
-
exports.
|
|
16
|
+
exports.RCTreeSwitchRenderer = RCTreeSwitchRenderer;
|
package/cjs/RCTree/helper.d.ts
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
import React, { MouseEvent } from 'react';
|
|
2
2
|
import { AddNodePosition, DropPositionInfo, InternalRCNode, RCTreeNode } from './types';
|
|
3
|
+
export declare const DEPTH_LEVEL_INDENT = 16;
|
|
3
4
|
export declare const defaultIsLeaf: ({ children }: {
|
|
4
5
|
children?: unknown[];
|
|
5
6
|
}) => boolean;
|
|
6
|
-
type ConvertTreeDataProps<
|
|
7
|
-
data:
|
|
7
|
+
type ConvertTreeDataProps<Node> = {
|
|
8
|
+
data: Node[];
|
|
8
9
|
parentPath?: number[];
|
|
9
|
-
isLeaf: (node:
|
|
10
|
+
isLeaf: (node: Node) => boolean;
|
|
10
11
|
};
|
|
11
|
-
export declare const convertTreeData: ({ data, isLeaf }: ConvertTreeDataProps<
|
|
12
|
+
export declare const convertTreeData: <Node extends RCTreeNode>({ data, isLeaf }: ConvertTreeDataProps<Node>) => InternalRCNode<Node>[];
|
|
12
13
|
export declare const getNodeAtPosition: (treeData: RCTreeNode[], pos: string) => any;
|
|
13
14
|
export declare const getParentPos: (pos: string) => string;
|
|
14
|
-
export declare const changeNodeAtPosition: (treeData:
|
|
15
|
+
export declare const changeNodeAtPosition: <Node extends RCTreeNode>(treeData: Node[], pos: string, changeNode: (node: Node) => Node) => any;
|
|
15
16
|
export declare const removeNodeAtPosition: (treeData: RCTreeNode[], pos: string) => any;
|
|
16
17
|
export declare const insertNodeAtPosition: (treeData: RCTreeNode[], pos: string, dropPosition: number, node: RCTreeNode) => any;
|
|
17
18
|
export declare const moveNode: (treeData: RCTreeNode[], dragNode: RCTreeNode, dragNodePos: string, dropPositionInfo: DropPositionInfo) => any;
|
|
@@ -29,4 +30,8 @@ export declare const getDropNodePosition: (event: React.DragEvent<HTMLDivElement
|
|
|
29
30
|
export declare const isDropIndicatorNode: (node: InternalRCNode) => boolean;
|
|
30
31
|
export declare const gatherNodeKeys: (node: InternalRCNode) => string[];
|
|
31
32
|
export declare const preventNodeDragging: (event: MouseEvent<HTMLDivElement>) => void;
|
|
33
|
+
type LevelLinesData = Record<string, [boolean[], boolean]>;
|
|
34
|
+
export declare const getLevelLinesData: (treeData: RCTreeNode[]) => LevelLinesData;
|
|
35
|
+
export declare const setTreeWidth: (container: React.RefObject<HTMLDivElement>, data: RCTreeNode[]) => void;
|
|
36
|
+
export declare const calcNodeWidth: (depth: number, containerWidth: number) => number;
|
|
32
37
|
export {};
|
package/cjs/RCTree/helper.js
CHANGED
|
@@ -20,11 +20,14 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
20
20
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
21
21
|
};
|
|
22
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
exports.preventNodeDragging = exports.gatherNodeKeys = exports.isDropIndicatorNode = exports.getDropNodePosition = exports.slideNodePos = exports.getExpandedKeys = exports.moveNode = exports.insertNodeAtPosition = exports.removeNodeAtPosition = exports.changeNodeAtPosition = exports.getParentPos = exports.getNodeAtPosition = exports.convertTreeData = exports.defaultIsLeaf = void 0;
|
|
23
|
+
exports.calcNodeWidth = exports.setTreeWidth = exports.getLevelLinesData = exports.preventNodeDragging = exports.gatherNodeKeys = exports.isDropIndicatorNode = exports.getDropNodePosition = exports.slideNodePos = exports.getExpandedKeys = exports.moveNode = exports.insertNodeAtPosition = exports.removeNodeAtPosition = exports.changeNodeAtPosition = exports.getParentPos = exports.getNodeAtPosition = exports.convertTreeData = exports.defaultIsLeaf = exports.DEPTH_LEVEL_INDENT = void 0;
|
|
24
24
|
var ramda_1 = require("ramda");
|
|
25
25
|
var types_1 = require("./types");
|
|
26
|
-
|
|
26
|
+
exports.DEPTH_LEVEL_INDENT = 16;
|
|
27
27
|
var DROP_INDICATOR_NODE_KEY = '-1';
|
|
28
|
+
var CONTAINER_PADDINGS = 29;
|
|
29
|
+
var NODE_TITLE_MAX_WIDTH = 204;
|
|
30
|
+
var INITIAL_NODE_DEPTH = 2;
|
|
28
31
|
var defaultIsLeaf = function (_a) {
|
|
29
32
|
var _b = _a.children, children = _b === void 0 ? [] : _b;
|
|
30
33
|
return !children.length;
|
|
@@ -146,7 +149,7 @@ var findDepthPosition = function (event, dropNode) {
|
|
|
146
149
|
var dropNodeLevel = dropNode.pos.split('-').length - 1;
|
|
147
150
|
var leftPadding = parseFloat(window.getComputedStyle(nodeElement).paddingLeft) || 0;
|
|
148
151
|
var offsetX = event.clientX - nodeElement.getBoundingClientRect().left - leftPadding;
|
|
149
|
-
return Math.min(dropNodeLevel + 1, Math.max(Math.round(offsetX / DEPTH_LEVEL_INDENT), dropNodeLevel));
|
|
152
|
+
return Math.min(dropNodeLevel + 1, Math.max(Math.round(offsetX / exports.DEPTH_LEVEL_INDENT), dropNodeLevel));
|
|
150
153
|
};
|
|
151
154
|
var changePosLastIndex = function (pos, change) {
|
|
152
155
|
var position = pos.split('-');
|
|
@@ -208,3 +211,46 @@ var preventNodeDragging = function (event) {
|
|
|
208
211
|
event.preventDefault();
|
|
209
212
|
};
|
|
210
213
|
exports.preventNodeDragging = preventNodeDragging;
|
|
214
|
+
var getLevelLinesData = function (treeData) {
|
|
215
|
+
var getLinesData = function (data, prevLinesData) {
|
|
216
|
+
return data.reduce(function (linesData, node, index) {
|
|
217
|
+
var isLast = index === data.length - 1;
|
|
218
|
+
linesData[String(node.nodeId)] = [prevLinesData, isLast];
|
|
219
|
+
if (node.children && node.expanded) {
|
|
220
|
+
var nextLinesData = prevLinesData.concat(!isLast);
|
|
221
|
+
return __assign(__assign({}, linesData), getLinesData(node.children, nextLinesData));
|
|
222
|
+
}
|
|
223
|
+
return linesData;
|
|
224
|
+
}, {});
|
|
225
|
+
};
|
|
226
|
+
return getLinesData(treeData, []);
|
|
227
|
+
};
|
|
228
|
+
exports.getLevelLinesData = getLevelLinesData;
|
|
229
|
+
var getTreeMaxDepth = function (data, depth) {
|
|
230
|
+
if (depth === void 0) { depth = INITIAL_NODE_DEPTH; }
|
|
231
|
+
return data.reduce(function (maxDepth, node) {
|
|
232
|
+
return node.expanded && node.children
|
|
233
|
+
? Math.max(maxDepth, getTreeMaxDepth(node.children, depth + 1))
|
|
234
|
+
: maxDepth;
|
|
235
|
+
}, depth);
|
|
236
|
+
};
|
|
237
|
+
var getTreeMaxWidth = function (data) {
|
|
238
|
+
return getTreeMaxDepth(data) * exports.DEPTH_LEVEL_INDENT + NODE_TITLE_MAX_WIDTH + CONTAINER_PADDINGS;
|
|
239
|
+
};
|
|
240
|
+
var setTreeWidth = function (container, data) {
|
|
241
|
+
var _a, _b;
|
|
242
|
+
if (container.current) {
|
|
243
|
+
var maxTreeWidth = getTreeMaxWidth(data);
|
|
244
|
+
var list = (_b = (_a = container.current) === null || _a === void 0 ? void 0 : _a.getElementsByClassName('rc-tree-list-holder')[0]) === null || _b === void 0 ? void 0 : _b.firstChild;
|
|
245
|
+
if (list)
|
|
246
|
+
list.style.minWidth = "".concat(maxTreeWidth, "px");
|
|
247
|
+
}
|
|
248
|
+
};
|
|
249
|
+
exports.setTreeWidth = setTreeWidth;
|
|
250
|
+
var calcNodeWidth = function (depth, containerWidth) {
|
|
251
|
+
if (depth === void 0) { depth = 0; }
|
|
252
|
+
var leftIndent = (depth + INITIAL_NODE_DEPTH) * exports.DEPTH_LEVEL_INDENT;
|
|
253
|
+
var paddings = leftIndent + CONTAINER_PADDINGS;
|
|
254
|
+
return Math.max(containerWidth - paddings, NODE_TITLE_MAX_WIDTH);
|
|
255
|
+
};
|
|
256
|
+
exports.calcNodeWidth = calcNodeWidth;
|
package/cjs/RCTree/index.d.ts
CHANGED
package/cjs/RCTree/index.js
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RCTree = void 0;
|
|
3
|
+
exports.RCTreeSwitchRenderer = exports.RCTreeLevelLines = exports.RCTree = void 0;
|
|
4
4
|
var RCTree_1 = require("./RCTree");
|
|
5
5
|
Object.defineProperty(exports, "RCTree", { enumerable: true, get: function () { return RCTree_1.RCTree; } });
|
|
6
|
+
var RCTreeLevelLines_1 = require("./RCTreeLevelLines");
|
|
7
|
+
Object.defineProperty(exports, "RCTreeLevelLines", { enumerable: true, get: function () { return RCTreeLevelLines_1.RCTreeLevelLines; } });
|
|
8
|
+
var RCTreeSwitchRenderer_1 = require("./RCTreeSwitchRenderer");
|
|
9
|
+
Object.defineProperty(exports, "RCTreeSwitchRenderer", { enumerable: true, get: function () { return RCTreeSwitchRenderer_1.RCTreeSwitchRenderer; } });
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useStyles = void 0;
|
|
4
|
+
var styles_1 = require("@mui/styles");
|
|
5
|
+
var helper_1 = require("./helper");
|
|
6
|
+
exports.useStyles = (0, styles_1.makeStyles)(function () { return ({
|
|
7
|
+
levelLines: function (_a) {
|
|
8
|
+
var level = _a.level;
|
|
9
|
+
return ({
|
|
10
|
+
position: 'absolute',
|
|
11
|
+
left: "-".concat(level * helper_1.DEPTH_LEVEL_INDENT, "px"),
|
|
12
|
+
display: 'flex',
|
|
13
|
+
paddingLeft: '7px',
|
|
14
|
+
cursor: 'initial',
|
|
15
|
+
bottom: 0,
|
|
16
|
+
top: 0,
|
|
17
|
+
zIndex: -1
|
|
18
|
+
});
|
|
19
|
+
},
|
|
20
|
+
levelLine: {
|
|
21
|
+
paddingLeft: '16px',
|
|
22
|
+
height: '100%',
|
|
23
|
+
position: 'relative'
|
|
24
|
+
},
|
|
25
|
+
showLine: {
|
|
26
|
+
'&:after': {
|
|
27
|
+
content: '""',
|
|
28
|
+
position: 'absolute',
|
|
29
|
+
height: '100%',
|
|
30
|
+
width: '1px',
|
|
31
|
+
left: '0',
|
|
32
|
+
top: '0',
|
|
33
|
+
bottom: '0',
|
|
34
|
+
backgroundColor: 'rgba(0, 122, 193, 0.3)'
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
lastLevelLine: {
|
|
38
|
+
'&:after': {
|
|
39
|
+
height: '14px'
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
horizontalLine: {
|
|
43
|
+
'&:before': {
|
|
44
|
+
content: '""',
|
|
45
|
+
height: '1px',
|
|
46
|
+
width: '4px',
|
|
47
|
+
position: 'absolute',
|
|
48
|
+
top: '14px',
|
|
49
|
+
left: '0',
|
|
50
|
+
backgroundColor: 'rgba(0, 122, 193, 0.3)'
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}); });
|
package/cjs/RCTree/styles.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"expandButton" | "collapseButton" | "dropIndicator" | "switcherButtonWrapper" | "switcherButton" | "treeWrapper" | "dropNotAllowed" | "draggedChildrenNode" | "dragHandle" | "dragHandleDragging" | "@global">;
|
|
1
|
+
export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"expandButton" | "titleWrapper" | "collapseButton" | "dropIndicator" | "switcherButtonWrapper" | "switcherButton" | "treeContainer" | "treeWrapper" | "dropNotAllowed" | "draggedChildrenNode" | "dragHandle" | "dragHandleDragging" | "@global">;
|
package/cjs/RCTree/styles.js
CHANGED
|
@@ -4,11 +4,12 @@ exports.useStyles = void 0;
|
|
|
4
4
|
var styles_1 = require("@mui/styles");
|
|
5
5
|
exports.useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
|
|
6
6
|
switcherButtonWrapper: {
|
|
7
|
-
paddingTop: '
|
|
8
|
-
paddingLeft: '
|
|
7
|
+
paddingTop: '13px',
|
|
8
|
+
paddingLeft: '2px',
|
|
9
9
|
width: '12px',
|
|
10
10
|
height: '12px',
|
|
11
|
-
cursor: 'pointer'
|
|
11
|
+
cursor: 'pointer',
|
|
12
|
+
marginLeft: '2px'
|
|
12
13
|
},
|
|
13
14
|
switcherButton: {
|
|
14
15
|
transition: 'transform .15s ease',
|
|
@@ -24,8 +25,12 @@ exports.useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
|
|
|
24
25
|
expandButton: {
|
|
25
26
|
transform: ' rotate(-90deg)'
|
|
26
27
|
},
|
|
28
|
+
treeContainer: {
|
|
29
|
+
height: '100%'
|
|
30
|
+
},
|
|
27
31
|
treeWrapper: {
|
|
28
|
-
border: 'none'
|
|
32
|
+
border: 'none',
|
|
33
|
+
height: '100%'
|
|
29
34
|
},
|
|
30
35
|
dropIndicator: {
|
|
31
36
|
'&:before': {
|
|
@@ -36,11 +41,8 @@ exports.useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
|
|
|
36
41
|
top: 0,
|
|
37
42
|
right: '23px',
|
|
38
43
|
bottom: 0,
|
|
39
|
-
left: '-
|
|
44
|
+
left: '-16px',
|
|
40
45
|
zIndex: 1
|
|
41
|
-
},
|
|
42
|
-
'&>div': {
|
|
43
|
-
opacity: 0
|
|
44
46
|
}
|
|
45
47
|
},
|
|
46
48
|
dropNotAllowed: {
|
|
@@ -55,17 +57,18 @@ exports.useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
|
|
|
55
57
|
dragHandle: {
|
|
56
58
|
cursor: 'move',
|
|
57
59
|
color: theme.palette.text.secondary,
|
|
58
|
-
width: '16px'
|
|
60
|
+
width: '16px',
|
|
61
|
+
marginLeft: '5px',
|
|
62
|
+
marginTop: '3px'
|
|
59
63
|
},
|
|
60
64
|
dragHandleDragging: {
|
|
61
65
|
visibility: 'hidden'
|
|
62
66
|
},
|
|
67
|
+
titleWrapper: {
|
|
68
|
+
paddingRight: '11px'
|
|
69
|
+
},
|
|
63
70
|
/* rc-tree/assets/index.css */
|
|
64
71
|
'@global': {
|
|
65
|
-
'.rc-tree': {
|
|
66
|
-
margin: 0,
|
|
67
|
-
border: '1px solid transparent'
|
|
68
|
-
},
|
|
69
72
|
'.rc-tree-focused:not(.rc-tree-active-focused)': {
|
|
70
73
|
borderColor: 'cyan'
|
|
71
74
|
},
|
|
@@ -119,9 +122,6 @@ exports.useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
|
|
|
119
122
|
verticalAlign: 'top',
|
|
120
123
|
display: 'none!important'
|
|
121
124
|
},
|
|
122
|
-
'.rc-tree .rc-tree-treenode span.rc-tree-switcher.rc-tree-switcher-noop': {
|
|
123
|
-
cursor: 'auto'
|
|
124
|
-
},
|
|
125
125
|
'.rc-tree .rc-tree-treenode span.rc-tree-checkbox': {
|
|
126
126
|
width: '13px',
|
|
127
127
|
height: '13px',
|
|
@@ -131,9 +131,7 @@ exports.useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
|
|
|
131
131
|
'.rc-tree .rc-tree-treenode span.rc-tree-checkbox-checked': {
|
|
132
132
|
backgroundPosition: '-14px 0'
|
|
133
133
|
},
|
|
134
|
-
'.rc-tree .rc-tree-treenode span.rc-tree-checkbox-indeterminate': {
|
|
135
|
-
backgroundPosition: '-14px -28px'
|
|
136
|
-
},
|
|
134
|
+
'.rc-tree .rc-tree-treenode span.rc-tree-checkbox-indeterminate': {},
|
|
137
135
|
'.rc-tree .rc-tree-treenode span.rc-tree-checkbox-disabled': {
|
|
138
136
|
backgroundPosition: '0 -56px'
|
|
139
137
|
},
|
|
@@ -201,16 +199,24 @@ exports.useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
|
|
|
201
199
|
marginRight: '2px',
|
|
202
200
|
verticalAlign: 'top'
|
|
203
201
|
},
|
|
204
|
-
'.rc-tree-indent': {
|
|
205
|
-
display: 'inline-block',
|
|
206
|
-
height: 0,
|
|
207
|
-
verticalAlign: 'bottom'
|
|
208
|
-
},
|
|
209
202
|
'.rc-tree-indent-unit': {
|
|
210
203
|
display: 'inline-block',
|
|
211
204
|
width: '16px'
|
|
212
205
|
},
|
|
213
206
|
//Custom styles
|
|
207
|
+
'.rc-tree': {
|
|
208
|
+
margin: 0
|
|
209
|
+
},
|
|
210
|
+
'.rc-tree-indent': {
|
|
211
|
+
display: 'inline-block',
|
|
212
|
+
height: 0,
|
|
213
|
+
verticalAlign: 'bottom',
|
|
214
|
+
whiteSpace: 'nowrap'
|
|
215
|
+
},
|
|
216
|
+
'.rc-tree .rc-tree-treenode span.rc-tree-switcher.rc-tree-switcher-noop': {
|
|
217
|
+
cursor: 'auto',
|
|
218
|
+
minWidth: '16px'
|
|
219
|
+
},
|
|
214
220
|
'.rc-tree .rc-tree-treenode .rc-tree-node-content-wrapper': {
|
|
215
221
|
position: 'relative',
|
|
216
222
|
display: 'inline-block',
|
|
@@ -220,22 +226,21 @@ exports.useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
|
|
|
220
226
|
verticalAlign: 'top',
|
|
221
227
|
cursor: 'pointer',
|
|
222
228
|
height: 'auto',
|
|
223
|
-
paddingRight: '11px',
|
|
224
229
|
flexGrow: 1
|
|
225
230
|
},
|
|
226
231
|
'.rc-tree .rc-tree-treenode': {
|
|
227
232
|
margin: 0,
|
|
228
233
|
padding: '0 0 0 18px',
|
|
229
|
-
lineHeight: '
|
|
234
|
+
lineHeight: '10px',
|
|
230
235
|
listStyle: 'none',
|
|
231
236
|
outline: 0,
|
|
237
|
+
display: 'flex',
|
|
238
|
+
minHeight: '28px',
|
|
239
|
+
zIndex: 0,
|
|
232
240
|
'&:hover': {
|
|
233
241
|
backgroundColor: 'rgba(0,0,0,0.06)'
|
|
234
242
|
}
|
|
235
243
|
},
|
|
236
|
-
'.rc-tree-treenode': {
|
|
237
|
-
display: 'flex'
|
|
238
|
-
},
|
|
239
244
|
'.rc-tree-icon_loading': {
|
|
240
245
|
display: 'none !important'
|
|
241
246
|
},
|
|
@@ -247,13 +252,41 @@ exports.useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
|
|
|
247
252
|
display: 'inline-flex',
|
|
248
253
|
justifyContent: 'center',
|
|
249
254
|
width: '16px',
|
|
250
|
-
visibility: 'hidden'
|
|
255
|
+
visibility: 'hidden',
|
|
256
|
+
lineHeight: '12px'
|
|
251
257
|
},
|
|
252
258
|
'.rc-tree-treenode-draggable:hover .rc-tree-draggable-icon': {
|
|
253
259
|
visibility: 'visible'
|
|
254
260
|
},
|
|
255
261
|
'.rc-tree-switcher-noop': {
|
|
256
262
|
width: '16px'
|
|
263
|
+
},
|
|
264
|
+
'.rc-tree-switcher': {
|
|
265
|
+
position: 'relative',
|
|
266
|
+
cursor: 'pointer'
|
|
267
|
+
},
|
|
268
|
+
'.rc-tree-switcher.rc-tree-switcher_open': {
|
|
269
|
+
'&:after': {
|
|
270
|
+
content: '""',
|
|
271
|
+
position: 'absolute',
|
|
272
|
+
top: '28px',
|
|
273
|
+
bottom: 0,
|
|
274
|
+
width: '1px',
|
|
275
|
+
left: '7px',
|
|
276
|
+
backgroundColor: 'rgba(0, 122, 193, 0.3)'
|
|
277
|
+
}
|
|
278
|
+
},
|
|
279
|
+
'.rc-tree-list': {
|
|
280
|
+
height: '100%'
|
|
281
|
+
},
|
|
282
|
+
'.rc-tree-list-holder': {
|
|
283
|
+
height: '100%'
|
|
284
|
+
},
|
|
285
|
+
'.rc-tree-list-scrollbar-vertical': {
|
|
286
|
+
width: '6px !important'
|
|
287
|
+
},
|
|
288
|
+
'.rc-tree-list-scrollbar-thumb': {
|
|
289
|
+
background: 'rgba(0,0,0,.2) !important'
|
|
257
290
|
}
|
|
258
291
|
}
|
|
259
292
|
}); });
|
package/cjs/RCTree/types.d.ts
CHANGED
|
@@ -5,9 +5,10 @@ export type RCTreeNode = {
|
|
|
5
5
|
expanded?: boolean;
|
|
6
6
|
children?: RCTreeNode[];
|
|
7
7
|
};
|
|
8
|
-
export type InternalRCNode = {
|
|
9
|
-
value:
|
|
8
|
+
export type InternalRCNode<Node extends RCTreeNode = RCTreeNode> = {
|
|
9
|
+
value: Node;
|
|
10
10
|
pos?: string;
|
|
11
|
+
expanded?: boolean;
|
|
11
12
|
} & FieldDataNode<{
|
|
12
13
|
key: string;
|
|
13
14
|
title?: string;
|
package/cjs/RCTree/useDnd.d.ts
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
import { DragEvent } from 'react';
|
|
2
2
|
import { InternalRCNode, RCTreeNode } from './types';
|
|
3
|
-
type Props = {
|
|
4
|
-
treeData:
|
|
3
|
+
type Props<Node extends RCTreeNode> = {
|
|
4
|
+
treeData: Node[];
|
|
5
5
|
containerRef: React.RefObject<HTMLDivElement>;
|
|
6
6
|
expandNode: (pos: string, expanded: boolean) => void;
|
|
7
|
-
onLoadChildren?: (treeNode:
|
|
8
|
-
onChange?: (node:
|
|
9
|
-
onDrop?: (treeData:
|
|
7
|
+
onLoadChildren?: (treeNode: Node) => Promise<void>;
|
|
8
|
+
onChange?: (node: Node[]) => void;
|
|
9
|
+
onDrop?: (treeData: Node[], dragNode: Node, parentNode: Node) => void;
|
|
10
10
|
canDrop?: (params: {
|
|
11
|
-
nextParent:
|
|
12
|
-
node:
|
|
11
|
+
nextParent: Node;
|
|
12
|
+
node: Node;
|
|
13
13
|
}) => boolean;
|
|
14
14
|
canDrag?: (params: {
|
|
15
|
-
node:
|
|
15
|
+
node: Node;
|
|
16
16
|
}) => boolean;
|
|
17
17
|
};
|
|
18
|
-
export declare const useDnd: ({ treeData, containerRef, expandNode, onLoadChildren, onChange, onDrop: onDropProp, canDrop, canDrag }: Props) => {
|
|
18
|
+
export declare const useDnd: <Node extends RCTreeNode>({ treeData, containerRef, expandNode, onLoadChildren, onChange, onDrop: onDropProp, canDrop, canDrag }: Props<Node>) => {
|
|
19
19
|
treeProps: {
|
|
20
20
|
onDragStart: ({ node }: {
|
|
21
|
-
node: InternalRCNode
|
|
21
|
+
node: InternalRCNode<Node>;
|
|
22
22
|
}) => void;
|
|
23
23
|
onDragOver: ({ event, node }: {
|
|
24
24
|
event: DragEvent<HTMLDivElement>;
|
|
25
|
-
node: InternalRCNode
|
|
25
|
+
node: InternalRCNode<Node>;
|
|
26
26
|
}) => void;
|
|
27
27
|
onDragLeave: ({ event, node }: {
|
|
28
28
|
event: any;
|
|
@@ -31,13 +31,13 @@ export declare const useDnd: ({ treeData, containerRef, expandNode, onLoadChildr
|
|
|
31
31
|
onDrop: () => void;
|
|
32
32
|
dropIndicatorRender: () => any;
|
|
33
33
|
allowDrop: ({ dragNode, dropNode }: {
|
|
34
|
-
dragNode: InternalRCNode
|
|
35
|
-
dropNode: InternalRCNode
|
|
34
|
+
dragNode: InternalRCNode<Node>;
|
|
35
|
+
dropNode: InternalRCNode<Node>;
|
|
36
36
|
}) => boolean;
|
|
37
37
|
};
|
|
38
|
-
nodeDraggable: (node: InternalRCNode) => boolean;
|
|
39
|
-
dropNode: InternalRCNode
|
|
40
|
-
dragNode: InternalRCNode
|
|
38
|
+
nodeDraggable: (node: InternalRCNode<Node>) => boolean;
|
|
39
|
+
dropNode: InternalRCNode<Node>;
|
|
40
|
+
dragNode: InternalRCNode<Node>;
|
|
41
41
|
dropPositionInfo: {
|
|
42
42
|
pos: string;
|
|
43
43
|
dropPosition: number;
|