react-arborist 0.2.0-beta.0 → 1.0.0
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/dist/index.js +56 -29
- package/dist/index.js.map +1 -1
- package/dist/module.js +56 -29
- package/dist/module.js.map +1 -1
- package/dist/tree-api.d.ts +8 -3
- package/dist/types.d.ts +12 -4
- package/package.json +1 -1
- package/src/components/preview.tsx +3 -3
- package/src/components/row.tsx +10 -15
- package/src/components/tree.tsx +1 -1
- package/src/tree-api.ts +36 -9
- package/src/types.ts +8 -4
- package/dist/types.d.ts.map +0 -1
package/dist/types.d.ts
CHANGED
|
@@ -40,14 +40,16 @@ export declare type NodeState = {
|
|
|
40
40
|
isSelected: boolean;
|
|
41
41
|
isHoveringOverChild: boolean;
|
|
42
42
|
isDragging: boolean;
|
|
43
|
-
|
|
44
|
-
|
|
43
|
+
isSelectedStart: boolean;
|
|
44
|
+
isSelectedEnd: boolean;
|
|
45
45
|
isEditing: boolean;
|
|
46
46
|
};
|
|
47
47
|
export declare type NodeHandlers = {
|
|
48
48
|
toggle: MouseEventHandler;
|
|
49
|
-
select: (e: MouseEvent,
|
|
50
|
-
|
|
49
|
+
select: (e: MouseEvent, args: {
|
|
50
|
+
selectOnClick: boolean;
|
|
51
|
+
}) => void;
|
|
52
|
+
edit: () => Promise<EditResult>;
|
|
51
53
|
submit: (name: string) => void;
|
|
52
54
|
reset: () => void;
|
|
53
55
|
};
|
|
@@ -118,3 +120,9 @@ export declare type StaticContext<T> = TreeProviderProps<T> & {
|
|
|
118
120
|
api: TreeApi<T>;
|
|
119
121
|
list: MutableRefObject<FixedSizeList | undefined>;
|
|
120
122
|
};
|
|
123
|
+
export declare type EditResult = {
|
|
124
|
+
cancelled: true;
|
|
125
|
+
} | {
|
|
126
|
+
cancelled: false;
|
|
127
|
+
value: string;
|
|
128
|
+
};
|
package/package.json
CHANGED
|
@@ -91,13 +91,13 @@ const PreviewNode = memo(function PreviewNode(props: {
|
|
|
91
91
|
isDragging: false,
|
|
92
92
|
isEditing: false,
|
|
93
93
|
isSelected: false,
|
|
94
|
-
|
|
95
|
-
|
|
94
|
+
isSelectedStart: false,
|
|
95
|
+
isSelectedEnd: false,
|
|
96
96
|
isHoveringOverChild: false,
|
|
97
97
|
isOpen: node.isOpen,
|
|
98
98
|
}}
|
|
99
99
|
handlers={{
|
|
100
|
-
edit: () => {},
|
|
100
|
+
edit: () => Promise.resolve({ cancelled: true }),
|
|
101
101
|
select: () => {},
|
|
102
102
|
toggle: () => {},
|
|
103
103
|
submit: () => {},
|
package/src/components/row.tsx
CHANGED
|
@@ -37,8 +37,8 @@ export const Row = React.memo(function Row({ index, style }: Props) {
|
|
|
37
37
|
return {
|
|
38
38
|
isEditing,
|
|
39
39
|
isDragging,
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
isSelectedStart: isSelected && !prevSelected,
|
|
41
|
+
isSelectedEnd: isSelected && !nextSelected,
|
|
42
42
|
isSelected,
|
|
43
43
|
isHoveringOverChild,
|
|
44
44
|
isOpen,
|
|
@@ -54,9 +54,6 @@ export const Row = React.memo(function Row({ index, style }: Props) {
|
|
|
54
54
|
isDragging,
|
|
55
55
|
isOverFolder,
|
|
56
56
|
]);
|
|
57
|
-
if (isSelected) {
|
|
58
|
-
console.log({id: node.id, state})
|
|
59
|
-
}
|
|
60
57
|
|
|
61
58
|
const ref = useCallback(
|
|
62
59
|
(n: HTMLDivElement | null) => {
|
|
@@ -76,9 +73,12 @@ export const Row = React.memo(function Row({ index, style }: Props) {
|
|
|
76
73
|
|
|
77
74
|
const handlers = useMemo(() => {
|
|
78
75
|
return {
|
|
79
|
-
select: (
|
|
76
|
+
select: (
|
|
77
|
+
e: React.MouseEvent,
|
|
78
|
+
args: { selectOnClick: boolean } = { selectOnClick: true }
|
|
79
|
+
) => {
|
|
80
80
|
if (node.rowIndex === null) return;
|
|
81
|
-
if (selectOnClick || e.metaKey || e.shiftKey) {
|
|
81
|
+
if (args.selectOnClick || e.metaKey || e.shiftKey) {
|
|
82
82
|
tree.api.select(node.rowIndex, e.metaKey, e.shiftKey);
|
|
83
83
|
} else {
|
|
84
84
|
tree.api.select(null, false, false);
|
|
@@ -88,16 +88,11 @@ export const Row = React.memo(function Row({ index, style }: Props) {
|
|
|
88
88
|
e.stopPropagation();
|
|
89
89
|
tree.onToggle(node.id, !node.isOpen);
|
|
90
90
|
},
|
|
91
|
-
edit: () =>
|
|
92
|
-
tree.api.edit(node.id);
|
|
93
|
-
},
|
|
91
|
+
edit: () => tree.api.edit(node.id),
|
|
94
92
|
submit: (name: string) => {
|
|
95
|
-
|
|
96
|
-
tree.api.edit(null);
|
|
97
|
-
},
|
|
98
|
-
reset: () => {
|
|
99
|
-
tree.api.edit(null);
|
|
93
|
+
name.trim() ? tree.api.submit(node.id, name) : tree.api.reset(node.id);
|
|
100
94
|
},
|
|
95
|
+
reset: () => tree.api.reset(node.id),
|
|
101
96
|
};
|
|
102
97
|
}, [tree, node]);
|
|
103
98
|
|
package/src/components/tree.tsx
CHANGED
|
@@ -21,7 +21,7 @@ const OuterElement = forwardRef(function Outer(
|
|
|
21
21
|
const tree = useStaticContext();
|
|
22
22
|
return (
|
|
23
23
|
// @ts-ignore
|
|
24
|
-
<div ref={ref} {...rest} onClick={tree.onClick}>
|
|
24
|
+
<div ref={ref} {...rest} onClick={tree.onClick} onContextMenu={tree.onContextMenu}>
|
|
25
25
|
<div
|
|
26
26
|
style={{
|
|
27
27
|
height: tree.api.visibleNodes.length * tree.rowHeight,
|
package/src/tree-api.ts
CHANGED
|
@@ -4,9 +4,12 @@ import { FixedSizeList } from "react-window";
|
|
|
4
4
|
import { flattenTree } from "./data/flatten-tree";
|
|
5
5
|
import { Cursor } from "./dnd/compute-drop";
|
|
6
6
|
import { Action, actions } from "./reducer";
|
|
7
|
-
import { Node, StateContext, TreeProviderProps } from "./types";
|
|
7
|
+
import { Node, StateContext, TreeProviderProps, EditResult } from "./types";
|
|
8
|
+
import ReactDOM from "react-dom";
|
|
8
9
|
|
|
9
10
|
export class TreeApi<T = unknown> {
|
|
11
|
+
private edits = new Map<string, (args: EditResult) => void>();
|
|
12
|
+
|
|
10
13
|
constructor(
|
|
11
14
|
public dispatch: Dispatch<Action>,
|
|
12
15
|
public state: StateContext,
|
|
@@ -36,14 +39,42 @@ export class TreeApi<T = unknown> {
|
|
|
36
39
|
return this.state.selection.ids;
|
|
37
40
|
}
|
|
38
41
|
|
|
39
|
-
edit(id: string | number
|
|
40
|
-
|
|
42
|
+
edit(id: string | number): Promise<EditResult> {
|
|
43
|
+
const sid = id.toString();
|
|
44
|
+
this.resolveEdit(sid, { cancelled: true });
|
|
45
|
+
this.scrollToId(sid);
|
|
46
|
+
this.dispatch(actions.edit(sid));
|
|
47
|
+
return new Promise((resolve) => this.edits.set(sid, resolve));
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
submit(id: string | number, value: string) {
|
|
51
|
+
const sid = id.toString();
|
|
52
|
+
this.props.onEdit(sid, value);
|
|
53
|
+
this.dispatch(actions.edit(null));
|
|
54
|
+
this.resolveEdit(sid, { cancelled: false, value });
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
reset(id: string | number) {
|
|
58
|
+
const sid = id.toString();
|
|
59
|
+
this.dispatch(actions.edit(null));
|
|
60
|
+
this.resolveEdit(sid, { cancelled: true });
|
|
41
61
|
}
|
|
42
62
|
|
|
43
|
-
|
|
63
|
+
private resolveEdit(id: string, value: EditResult) {
|
|
64
|
+
const resolve = this.edits.get(id.toString());
|
|
65
|
+
if (resolve) resolve(value);
|
|
66
|
+
this.edits.delete(id);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
select(index: number | null, meta = false, shift = false) {
|
|
44
70
|
this.dispatch(actions.select(index, meta, shift));
|
|
45
71
|
}
|
|
46
72
|
|
|
73
|
+
selectById(id: string | number, meta = false, shift = false) {
|
|
74
|
+
const index = this.idToIndex[id];
|
|
75
|
+
this.select(index, meta, shift);
|
|
76
|
+
}
|
|
77
|
+
|
|
47
78
|
selectUpwards(shiftKey: boolean) {
|
|
48
79
|
this.dispatch(actions.stepUp(shiftKey, this.visibleIds));
|
|
49
80
|
}
|
|
@@ -67,11 +98,7 @@ export class TreeApi<T = unknown> {
|
|
|
67
98
|
this.list.scrollToItem(index, "start");
|
|
68
99
|
} else {
|
|
69
100
|
this.openParents(id);
|
|
70
|
-
|
|
71
|
-
// But I've only tested it in the console and
|
|
72
|
-
// not in an event handler which will be batched...
|
|
73
|
-
// We may need to wrap this in a timeout or trigger an effect somehow
|
|
74
|
-
setTimeout(() => {
|
|
101
|
+
ReactDOM.flushSync(() => {
|
|
75
102
|
const index = this.idToIndex[id];
|
|
76
103
|
if (index) {
|
|
77
104
|
this.list?.scrollToItem(index, "start");
|
package/src/types.ts
CHANGED
|
@@ -53,15 +53,15 @@ export type NodeState = {
|
|
|
53
53
|
isSelected: boolean;
|
|
54
54
|
isHoveringOverChild: boolean;
|
|
55
55
|
isDragging: boolean;
|
|
56
|
-
|
|
57
|
-
|
|
56
|
+
isSelectedStart: boolean;
|
|
57
|
+
isSelectedEnd: boolean;
|
|
58
58
|
isEditing: boolean;
|
|
59
59
|
};
|
|
60
60
|
|
|
61
61
|
export type NodeHandlers = {
|
|
62
62
|
toggle: MouseEventHandler;
|
|
63
|
-
select: (e: MouseEvent, selectOnClick
|
|
64
|
-
edit: () =>
|
|
63
|
+
select: (e: MouseEvent, args: { selectOnClick: boolean }) => void;
|
|
64
|
+
edit: () => Promise<EditResult>;
|
|
65
65
|
submit: (name: string) => void;
|
|
66
66
|
reset: () => void;
|
|
67
67
|
};
|
|
@@ -145,3 +145,7 @@ export type StaticContext<T> = TreeProviderProps<T> & {
|
|
|
145
145
|
api: TreeApi<T>;
|
|
146
146
|
list: MutableRefObject<FixedSizeList | undefined>;
|
|
147
147
|
};
|
|
148
|
+
|
|
149
|
+
export type EditResult =
|
|
150
|
+
| { cancelled: true }
|
|
151
|
+
| { cancelled: false; value: string };
|
package/dist/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/selection/range.ts","../src/selection/selection.ts","../src/data/flatten-tree.ts","../src/reducer.ts","../src/tree-api.ts","../src/types.ts","../src/utils.ts","../src/dnd/drop-hook.ts","../src/dnd/compute-drop.ts","../src/context.tsx","../src/data/enrich-tree.ts","../src/dnd/outer-drop-hook.ts","../src/selection/selection-hook.ts","../src/tree-api-hook.ts","../src/provider.tsx","../src/components/drop-cursor.tsx","../src/components/preview.tsx","../src/dnd/drag-hook.ts","../src/components/row.tsx","../src/components/tree.tsx","../src/index.ts","../src/data/make-tree.ts","../src/dnd/measure-hover.ts","../src/selection/selection.test.ts"],"names":[],"mappings":"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"}
|