@mapples/dnd 1.2.0 → 1.3.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/components/DnDRootView.d.ts.map +1 -1
- package/dist/components/DnDRootView.js +14 -7
- package/dist/components/DnDRootView.js.map +1 -1
- package/dist/components/DropArea.d.ts.map +1 -1
- package/dist/components/DropArea.js +6 -3
- package/dist/components/DropArea.js.map +1 -1
- package/dist/hooks/useDrag.d.ts.map +1 -1
- package/dist/hooks/useDrag.js +12 -0
- package/dist/hooks/useDrag.js.map +1 -1
- package/dist/hooks/useDrop.d.ts.map +1 -1
- package/dist/hooks/useDrop.js +22 -1
- package/dist/hooks/useDrop.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/monitor/Monitor.d.ts +16 -18
- package/dist/monitor/Monitor.d.ts.map +1 -1
- package/dist/monitor/Monitor.js +72 -85
- package/dist/monitor/Monitor.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DnDRootView.d.ts","sourceRoot":"","sources":["../../src/components/DnDRootView.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAgB,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG1D;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,WAAW,GAAI,CAAC,SAAS,MAAM,EAAE,+DAMpC,gBAAgB,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"DnDRootView.d.ts","sourceRoot":"","sources":["../../src/components/DnDRootView.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAgB,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG1D;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,WAAW,GAAI,CAAC,SAAS,MAAM,EAAE,+DAMpC,gBAAgB,CAAC,CAAC,CAAC,gCAyLrB,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useEffect, useState } from 'react';
|
|
1
|
+
import { useEffect, useMemo, useState } from 'react';
|
|
2
2
|
import { Gesture, GestureDetector, GestureHandlerRootView, PointerType, } from 'react-native-gesture-handler';
|
|
3
3
|
import { runOnJS, useSharedValue } from 'react-native-reanimated';
|
|
4
4
|
import { filter } from 'rxjs';
|
|
@@ -129,6 +129,10 @@ const DnDRootView = ({ children, DragElement, onDrop, pointerTransform, ...props
|
|
|
129
129
|
const pan = Gesture.Pan()
|
|
130
130
|
// A few pixels of slack so taps never register as element move-drags.
|
|
131
131
|
.minDistance(4)
|
|
132
|
+
// Element drags are one-finger gestures. A second finger belongs to the
|
|
133
|
+
// host's pinch/two-finger pan (native canvases), which must be free to
|
|
134
|
+
// activate instead of this pan swallowing both pointers.
|
|
135
|
+
.maxPointers(1)
|
|
132
136
|
.onBegin((e) => {
|
|
133
137
|
pressSV.set({ x: e.absoluteX, y: e.absoluteY });
|
|
134
138
|
})
|
|
@@ -160,12 +164,15 @@ const DnDRootView = ({ children, DragElement, onDrop, pointerTransform, ...props
|
|
|
160
164
|
runOnJS(handlePanEvents)('onDragEnd', e);
|
|
161
165
|
});
|
|
162
166
|
const composed = Gesture.Race(pan, tap);
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
167
|
+
// Every useDnD consumer (one per rendered node) re-renders when this value
|
|
168
|
+
// changes identity — keep it stable across unrelated root re-renders.
|
|
169
|
+
const contextValue = useMemo(() => ({
|
|
170
|
+
monitor,
|
|
171
|
+
isDragging,
|
|
172
|
+
sv,
|
|
173
|
+
svOverLayout,
|
|
174
|
+
}), [monitor, isDragging, sv, svOverLayout]);
|
|
175
|
+
return (<DnDContextProvider value={contextValue}>
|
|
169
176
|
<GestureHandlerRootView {...props}>
|
|
170
177
|
<GestureDetector gesture={composed}>{children}</GestureDetector>
|
|
171
178
|
</GestureHandlerRootView>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DnDRootView.js","sourceRoot":"","sources":["../../src/components/DnDRootView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"DnDRootView.js","sourceRoot":"","sources":["../../src/components/DnDRootView.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropArea.d.ts","sourceRoot":"","sources":["../../src/components/DropArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"DropArea.d.ts","sourceRoot":"","sources":["../../src/components/DropArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,iBAAiB,EAAW,MAAM,OAAO,CAAC;AAGvD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC;;;;;;;;;GASG;AACH,QAAA,MAAM,QAAQ,EAAE,EAAE,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAUlD,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { useMemo } from 'react';
|
|
1
2
|
import { DropContextProvider } from '../context';
|
|
2
3
|
/**
|
|
3
4
|
* Component that creates a drop area context for its children.
|
|
@@ -10,9 +11,11 @@ import { DropContextProvider } from '../context';
|
|
|
10
11
|
* @public
|
|
11
12
|
*/
|
|
12
13
|
const DropArea = ({ children, forId, }) => {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
// One DropArea wraps every rendered node: an inline value literal here
|
|
15
|
+
// would push a fresh context identity down the whole tree on any ancestor
|
|
16
|
+
// re-render, defeating memoization at every level below.
|
|
17
|
+
const value = useMemo(() => ({ parent: forId }), [forId]);
|
|
18
|
+
return <DropContextProvider value={value}>{children}</DropContextProvider>;
|
|
16
19
|
};
|
|
17
20
|
export default DropArea;
|
|
18
21
|
//# sourceMappingURL=DropArea.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropArea.js","sourceRoot":"","sources":["../../src/components/DropArea.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DropArea.js","sourceRoot":"","sources":["../../src/components/DropArea.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyB,OAAO,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD;;;;;;;;;GASG;AACH,MAAM,QAAQ,GAAyC,CAAC,EACtD,QAAQ,EACR,KAAK,GACN,EAAE,EAAE;IACH,uEAAuE;IACvE,0EAA0E;IAC1E,yDAAyD;IACzD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAE1D,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAC,CAAC;AAC7E,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDrag.d.ts","sourceRoot":"","sources":["../../src/hooks/useDrag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA4C,MAAM,OAAO,CAAC;AAE5E,OAAO,EAAmB,IAAI,EAAE,MAAM,cAAc,CAAC;AAGrD,OAAO,EAAgB,QAAQ,EAAE,MAAM,UAAU,CAAC;AAIlD;;;;;;;;;;GAUG;AACH,QAAA,MAAM,OAAO,GAAI,QAAQ,SAAS,MAAM,EAAE,QAAQ,SAAS,MAAM,GAAG,QAAQ,EAC1E,KAAK,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,EAC3B,MAAM,QAAQ,CAAC,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"useDrag.d.ts","sourceRoot":"","sources":["../../src/hooks/useDrag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA4C,MAAM,OAAO,CAAC;AAE5E,OAAO,EAAmB,IAAI,EAAE,MAAM,cAAc,CAAC;AAGrD,OAAO,EAAgB,QAAQ,EAAE,MAAM,UAAU,CAAC;AAIlD;;;;;;;;;;GAUG;AACH,QAAA,MAAM,OAAO,GAAI,QAAQ,SAAS,MAAM,EAAE,QAAQ,SAAS,MAAM,GAAG,QAAQ,EAC1E,KAAK,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,EAC3B,MAAM,QAAQ,CAAC,QAAQ,CAAC;IAgFtB,wCAAwC;;IAExC,0DAA0D;;IAE1D,sDAAsD;;CAGzD,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
package/dist/hooks/useDrag.js
CHANGED
|
@@ -19,8 +19,17 @@ const useDrag = (ref, item) => {
|
|
|
19
19
|
const [id, setId] = useState(null);
|
|
20
20
|
const idRef = useRef(null);
|
|
21
21
|
const layoutRef = useRef(null);
|
|
22
|
+
const registrationGenerationRef = useRef(0);
|
|
22
23
|
useEffect(() => {
|
|
24
|
+
// measureInWindow resolves in a later task. A stale callback from a
|
|
25
|
+
// superseded run (re-run or unmount) that still sees idRef.current ===
|
|
26
|
+
// null would register a duplicate drag element nobody ever unregisters.
|
|
27
|
+
// The generation token invalidates in-flight callbacks: bumped at the
|
|
28
|
+
// start of every run and again in cleanup.
|
|
29
|
+
const generation = ++registrationGenerationRef.current;
|
|
23
30
|
ref.current?.measureInWindow?.((x, y, width, height) => {
|
|
31
|
+
if (generation !== registrationGenerationRef.current)
|
|
32
|
+
return;
|
|
24
33
|
layoutRef.current = { x, y, width, height };
|
|
25
34
|
if (idRef.current) {
|
|
26
35
|
monitor.updateDragElement(idRef.current, layoutRef.current, item);
|
|
@@ -29,6 +38,9 @@ const useDrag = (ref, item) => {
|
|
|
29
38
|
idRef.current = monitor.registerDragElement(layoutRef.current, item);
|
|
30
39
|
setId(idRef.current);
|
|
31
40
|
});
|
|
41
|
+
return () => {
|
|
42
|
+
registrationGenerationRef.current++;
|
|
43
|
+
};
|
|
32
44
|
}, [item, monitor, ref]);
|
|
33
45
|
useEffect(() => {
|
|
34
46
|
return () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDrag.js","sourceRoot":"","sources":["../../src/hooks/useDrag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAG5E,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAY,MAAM,UAAU,CAAC;AAElD,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B;;;;;;;;;;GAUG;AACH,MAAM,OAAO,GAAG,CACd,GAA2B,EAC3B,IAAwB,EACxB,EAAE;IACF,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,EAAsB,CAAC;IAEjD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAElD,MAAM,KAAK,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"useDrag.js","sourceRoot":"","sources":["../../src/hooks/useDrag.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDrop.d.ts","sourceRoot":"","sources":["../../src/hooks/useDrop.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAMV,MAAM,OAAO,CAAC;AAEf,OAAO,EAAwC,IAAI,EAAE,MAAM,cAAc,CAAC;AAK1E,OAAO,EAAgB,UAAU,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAMtE;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,OAAO,GAAI,QAAQ,SAAS,MAAM,EAAE,QAAQ,SAAS,MAAM,GAAG,QAAQ,EAC1E,KAAK,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,EAC3B,SAAS,gBAAgB,EACzB,OAAO,QAAQ;
|
|
1
|
+
{"version":3,"file":"useDrop.d.ts","sourceRoot":"","sources":["../../src/hooks/useDrop.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAMV,MAAM,OAAO,CAAC;AAEf,OAAO,EAAwC,IAAI,EAAE,MAAM,cAAc,CAAC;AAK1E,OAAO,EAAgB,UAAU,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAMtE;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,OAAO,GAAI,QAAQ,SAAS,MAAM,EAAE,QAAQ,SAAS,MAAM,GAAG,QAAQ,EAC1E,KAAK,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,EAC3B,SAAS,gBAAgB,EACzB,OAAO,QAAQ;IAiLb,wCAAwC;;IAExC,wDAAwD;;IAExD,0CAA0C;;IAE1C,gDAAgD;;IAEhD,qDAAqD;;IAErD,0DAA0D;;CAG7D,CAAC;AAEF,eAAe,OAAO,CAAC"}
|
package/dist/hooks/useDrop.js
CHANGED
|
@@ -30,6 +30,7 @@ const useDrop = (ref, config, data) => {
|
|
|
30
30
|
const [dropTargetIndex, setDropTargetIndex] = useState(null);
|
|
31
31
|
const idRef = useRef(null);
|
|
32
32
|
const layoutRef = useRef(null);
|
|
33
|
+
const registrationGenerationRef = useRef(0);
|
|
33
34
|
/**
|
|
34
35
|
* Measures the element in the active coordinate space. Inside a frame
|
|
35
36
|
* space, rects are measured relative to the frame root (layout-engine
|
|
@@ -54,6 +55,12 @@ const useDrop = (ref, config, data) => {
|
|
|
54
55
|
});
|
|
55
56
|
}, [frameSpace, ref]);
|
|
56
57
|
useLayoutEffect(() => {
|
|
58
|
+
// `measure` resolves in a later task. By then this effect run may have
|
|
59
|
+
// been superseded (re-run, disable, unmount) — and a stale callback that
|
|
60
|
+
// still sees idRef.current === null would register a duplicate element
|
|
61
|
+
// nobody ever unregisters. The generation token invalidates in-flight
|
|
62
|
+
// callbacks: bumped at the start of every run and again in cleanup.
|
|
63
|
+
const generation = ++registrationGenerationRef.current;
|
|
57
64
|
// Disabled — or the parent's own registration hasn't landed yet:
|
|
58
65
|
// withdraw from the monitor entirely (no hit-testing, no drops) while
|
|
59
66
|
// the component — and its subtree — stays mounted. Registering under a
|
|
@@ -68,6 +75,8 @@ const useDrop = (ref, config, data) => {
|
|
|
68
75
|
return;
|
|
69
76
|
}
|
|
70
77
|
measure((layout) => {
|
|
78
|
+
if (generation !== registrationGenerationRef.current)
|
|
79
|
+
return;
|
|
71
80
|
layoutRef.current = layout;
|
|
72
81
|
// Only the frame root (no drop parent) carries the frame key; children
|
|
73
82
|
// inherit the space during hit testing.
|
|
@@ -81,6 +90,9 @@ const useDrop = (ref, config, data) => {
|
|
|
81
90
|
idRef.current = monitor.registerDropElement(layoutRef.current, parent, effectiveConfig, data);
|
|
82
91
|
setId(idRef.current);
|
|
83
92
|
});
|
|
93
|
+
return () => {
|
|
94
|
+
registrationGenerationRef.current++;
|
|
95
|
+
};
|
|
84
96
|
}, [config, data, frameSpace, measure, monitor, parent, ref]);
|
|
85
97
|
useEffect(() => {
|
|
86
98
|
return () => {
|
|
@@ -98,7 +110,16 @@ const useDrop = (ref, config, data) => {
|
|
|
98
110
|
setDropTarget(null);
|
|
99
111
|
return;
|
|
100
112
|
}
|
|
101
|
-
|
|
113
|
+
// Drag events arrive at pointer rate for EVERY registered drop
|
|
114
|
+
// element. Keeping the previous object while the target id is
|
|
115
|
+
// unchanged lets React bail out of the setState instead of
|
|
116
|
+
// re-rendering every node per pointer move. Consequence: the
|
|
117
|
+
// returned dropTarget's layout is a snapshot from when the target
|
|
118
|
+
// last changed — consumers read identity (`data`, `id`), not live
|
|
119
|
+
// geometry.
|
|
120
|
+
setDropTarget((prev) => (prev?.id ?? null) === (e.dropTarget?.id ?? null)
|
|
121
|
+
? prev
|
|
122
|
+
: e.dropTarget || null);
|
|
102
123
|
setIsOver(e.dropTarget?.id === idRef.current);
|
|
103
124
|
setDropTargetIndex(e.dropTargetIndex || 0);
|
|
104
125
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDrop.js","sourceRoot":"","sources":["../../src/hooks/useDrop.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EACX,SAAS,EACT,eAAe,EACf,MAAM,EACN,QAAQ,GACT,MAAM,OAAO,CAAC;AAEf,OAAO,EAAmB,mBAAmB,EAAQ,MAAM,cAAc,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAgC,MAAM,UAAU,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAE9C;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,GAAG,CACd,GAA2B,EAC3B,MAAyB,EACzB,IAAe,EACf,EAAE;IACF,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAC1C,IAAI,CACL,CAAC;IAEF,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,EAAsB,CAAC;IAC7D,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,CAAC;IACpC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,mBAAmB,EAAE,CAAC;IAEhD,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAClD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAE5E,MAAM,KAAK,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"useDrop.js","sourceRoot":"","sources":["../../src/hooks/useDrop.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './components';
|
|
2
2
|
export * from './context/DropContext';
|
|
3
3
|
export * from './context/FrameSpaceContext';
|
|
4
|
+
export { default as FrameSpaceContext } from './context/FrameSpaceContext';
|
|
4
5
|
export * from './hooks';
|
|
5
6
|
export * from './monitor';
|
|
6
7
|
export * from './types';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAG5C,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
export * from './components';
|
|
2
2
|
export * from './context/DropContext';
|
|
3
3
|
export * from './context/FrameSpaceContext';
|
|
4
|
+
// The context itself, for hosts that re-provide a frame's drop space
|
|
5
|
+
// elsewhere in the tree (a native portal cannot carry context across).
|
|
6
|
+
export { default as FrameSpaceContext } from './context/FrameSpaceContext';
|
|
4
7
|
export * from './hooks';
|
|
5
8
|
export * from './monitor';
|
|
6
9
|
export * from './types';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,qEAAqE;AACrE,uEAAuE;AACvE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
|
|
@@ -22,6 +22,16 @@ export declare class Monitor<DragData extends object, DropData extends object =
|
|
|
22
22
|
private dragElements;
|
|
23
23
|
/** Tree structure of registered drop elements */
|
|
24
24
|
private dropElementsTree;
|
|
25
|
+
/**
|
|
26
|
+
* Flat index of every registered drop element and its parent id. Kept in
|
|
27
|
+
* lockstep with the tree by register/unregister/update — the only writers —
|
|
28
|
+
* so id lookups and frame-key resolution are O(1)/O(depth) instead of a
|
|
29
|
+
* full recursive tree walk per layout event.
|
|
30
|
+
*/
|
|
31
|
+
private dropNodesById;
|
|
32
|
+
private dropParentById;
|
|
33
|
+
/** Pending coalesced force-layout broadcast (one per animation frame). */
|
|
34
|
+
private forceLayoutUpdatePending;
|
|
25
35
|
/** Registered frame coordinate spaces by key */
|
|
26
36
|
private frames;
|
|
27
37
|
/** ID of the currently active drag target */
|
|
@@ -74,7 +84,10 @@ export declare class Monitor<DragData extends object, DropData extends object =
|
|
|
74
84
|
private setDragTargetId;
|
|
75
85
|
/**
|
|
76
86
|
* Triggers a force layout update event.
|
|
77
|
-
* This causes all registered elements to recalculate their layout
|
|
87
|
+
* This causes all registered elements to recalculate their layout
|
|
88
|
+
* information. Every registered element answers with a forced layout read,
|
|
89
|
+
* so calls are coalesced to at most one broadcast per animation frame —
|
|
90
|
+
* scroll handlers and settle timers may call this at input rate.
|
|
78
91
|
*/
|
|
79
92
|
triggerForceLayoutUpdate(): void;
|
|
80
93
|
/**
|
|
@@ -237,18 +250,11 @@ export declare class Monitor<DragData extends object, DropData extends object =
|
|
|
237
250
|
*/
|
|
238
251
|
updateDropElement(id: number, layout: LayoutRectangle, config?: DropTargetConfig, data?: DropData): void;
|
|
239
252
|
/**
|
|
240
|
-
* Resolves the frame space an element (or any of its ancestors) belongs to
|
|
253
|
+
* Resolves the frame space an element (or any of its ancestors) belongs to
|
|
254
|
+
* by walking the parent chain — O(depth).
|
|
241
255
|
* @private
|
|
242
256
|
*/
|
|
243
257
|
private findFrameKeyFor;
|
|
244
|
-
/**
|
|
245
|
-
* Finds a drop target by ID in the tree structure.
|
|
246
|
-
* @param id - The ID to search for
|
|
247
|
-
* @param tree - The tree to search in
|
|
248
|
-
* @returns The drop item or null if not found
|
|
249
|
-
* @private
|
|
250
|
-
*/
|
|
251
|
-
private findDropTarget;
|
|
252
258
|
/**
|
|
253
259
|
* Finds a drop target by matching data properties.
|
|
254
260
|
* @param dataQuery - Partial data to match against
|
|
@@ -265,14 +271,6 @@ export declare class Monitor<DragData extends object, DropData extends object =
|
|
|
265
271
|
* @private
|
|
266
272
|
*/
|
|
267
273
|
private partialMatch;
|
|
268
|
-
/**
|
|
269
|
-
* Finds the parent of a drop target by ID.
|
|
270
|
-
* @param id - The ID of the child drop target
|
|
271
|
-
* @param tree - The tree to search in
|
|
272
|
-
* @returns The parent drop item or null if not found
|
|
273
|
-
* @private
|
|
274
|
-
*/
|
|
275
|
-
private findDropTargetParent;
|
|
276
274
|
/**
|
|
277
275
|
* Gets all drop targets that contain the given coordinates.
|
|
278
276
|
* @param dropCoords - The coordinates to check
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Monitor.d.ts","sourceRoot":"","sources":["../../src/monitor/Monitor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EACL,QAAQ,EAER,UAAU,EACV,iBAAiB,EACjB,QAAQ,EAER,UAAU,EACV,gBAAgB,EAGhB,UAAU,EACV,aAAa,EAEd,MAAM,UAAU,CAAC;AAElB;;;;;;;GAOG;AACH,qBAAa,OAAO,CAClB,QAAQ,SAAS,MAAM,EACvB,QAAQ,SAAS,MAAM,GAAG,QAAQ;IAElC,gDAAgD;IAChD,MAAM,wCAA+C;IAErD,oDAAoD;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAa;IAErC,qDAAqD;IACrD,OAAO,CAAC,cAAc,CAAK;IAC3B,qDAAqD;IACrD,OAAO,CAAC,cAAc,CAAK;IAE3B,4CAA4C;IAC5C,OAAO,CAAC,YAAY,CAAkD;IACtE,iDAAiD;IACjD,OAAO,CAAC,gBAAgB,CAAiC;IACzD,gDAAgD;IAChD,OAAO,CAAC,MAAM,CAAiC;IAE/C,6CAA6C;IAC7C,OAAO,CAAC,YAAY,CAAuB;IAC3C,uEAAuE;IACvE,OAAO,CAAC,UAAU,CAA+B;IACjD,wEAAwE;IACxE,OAAO,CAAC,eAAe,CAA2B;IAClD,OAAO,CAAC,cAAc,CAA2B;IACjD,mCAAmC;IACnC,OAAO,CAAC,UAAU,CAAqC;IAEvD,oDAAoD;IACpD,OAAO,CAAC,eAAe,CAAuB;IAC9C,gEAAgE;IAChE,OAAO,CAAC,YAAY,CAAkB;IAEtC;;;OAGG;gBACS,MAAM,EAAE,aAAa;IAOjC;;;;OAIG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU;IAIjD;;;OAGG;IACH,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;IAMtD,wCAAwC;IACxC,eAAe,CAAC,QAAQ,EAAE,MAAM;IAIhC,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM;IAIzB;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU;IAO9D;;;OAGG;IACH,eAAe;IAIf;;;OAGG;IACH,OAAO,CAAC,eAAe;IAIvB
|
|
1
|
+
{"version":3,"file":"Monitor.d.ts","sourceRoot":"","sources":["../../src/monitor/Monitor.ts"],"names":[],"mappings":"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"}
|
package/dist/monitor/Monitor.js
CHANGED
|
@@ -22,6 +22,16 @@ export class Monitor {
|
|
|
22
22
|
dragElements = new Map();
|
|
23
23
|
/** Tree structure of registered drop elements */
|
|
24
24
|
dropElementsTree = new Map();
|
|
25
|
+
/**
|
|
26
|
+
* Flat index of every registered drop element and its parent id. Kept in
|
|
27
|
+
* lockstep with the tree by register/unregister/update — the only writers —
|
|
28
|
+
* so id lookups and frame-key resolution are O(1)/O(depth) instead of a
|
|
29
|
+
* full recursive tree walk per layout event.
|
|
30
|
+
*/
|
|
31
|
+
dropNodesById = new Map();
|
|
32
|
+
dropParentById = new Map();
|
|
33
|
+
/** Pending coalesced force-layout broadcast (one per animation frame). */
|
|
34
|
+
forceLayoutUpdatePending = false;
|
|
25
35
|
/** Registered frame coordinate spaces by key */
|
|
26
36
|
frames = new Map();
|
|
27
37
|
/** ID of the currently active drag target */
|
|
@@ -99,11 +109,20 @@ export class Monitor {
|
|
|
99
109
|
}
|
|
100
110
|
/**
|
|
101
111
|
* Triggers a force layout update event.
|
|
102
|
-
* This causes all registered elements to recalculate their layout
|
|
112
|
+
* This causes all registered elements to recalculate their layout
|
|
113
|
+
* information. Every registered element answers with a forced layout read,
|
|
114
|
+
* so calls are coalesced to at most one broadcast per animation frame —
|
|
115
|
+
* scroll handlers and settle timers may call this at input rate.
|
|
103
116
|
*/
|
|
104
117
|
triggerForceLayoutUpdate() {
|
|
105
|
-
this.
|
|
106
|
-
|
|
118
|
+
if (this.forceLayoutUpdatePending)
|
|
119
|
+
return;
|
|
120
|
+
this.forceLayoutUpdatePending = true;
|
|
121
|
+
requestAnimationFrame(() => {
|
|
122
|
+
this.forceLayoutUpdatePending = false;
|
|
123
|
+
this.events.next({
|
|
124
|
+
type: DnDEventType.LayoutForceUpdate,
|
|
125
|
+
});
|
|
107
126
|
});
|
|
108
127
|
}
|
|
109
128
|
/**
|
|
@@ -482,7 +501,7 @@ export class Monitor {
|
|
|
482
501
|
registerDropElement(layout, parent, config, data) {
|
|
483
502
|
this.dropElementIds++;
|
|
484
503
|
if (!parent) {
|
|
485
|
-
|
|
504
|
+
const item = {
|
|
486
505
|
layout: {
|
|
487
506
|
...layout,
|
|
488
507
|
index: config?.index || 0,
|
|
@@ -492,17 +511,20 @@ export class Monitor {
|
|
|
492
511
|
canDrop: config?.canDrop,
|
|
493
512
|
data,
|
|
494
513
|
frameKey: config?.frameKey,
|
|
495
|
-
}
|
|
514
|
+
};
|
|
515
|
+
this.dropElementsTree.set(this.dropElementIds, item);
|
|
516
|
+
this.dropNodesById.set(this.dropElementIds, item);
|
|
517
|
+
this.dropParentById.set(this.dropElementIds, null);
|
|
496
518
|
}
|
|
497
519
|
else {
|
|
498
|
-
const parentLayout = this.
|
|
520
|
+
const parentLayout = this.dropNodesById.get(parent);
|
|
499
521
|
if (!parentLayout) {
|
|
500
522
|
throw new Error('Parent element not found');
|
|
501
523
|
}
|
|
502
524
|
if (!parentLayout.children) {
|
|
503
525
|
parentLayout.children = new Map();
|
|
504
526
|
}
|
|
505
|
-
|
|
527
|
+
const item = {
|
|
506
528
|
layout: {
|
|
507
529
|
...layout,
|
|
508
530
|
index: config?.index || 0,
|
|
@@ -511,7 +533,10 @@ export class Monitor {
|
|
|
511
533
|
},
|
|
512
534
|
canDrop: config?.canDrop,
|
|
513
535
|
data,
|
|
514
|
-
}
|
|
536
|
+
};
|
|
537
|
+
parentLayout.children.set(this.dropElementIds, item);
|
|
538
|
+
this.dropNodesById.set(this.dropElementIds, item);
|
|
539
|
+
this.dropParentById.set(this.dropElementIds, parent);
|
|
515
540
|
}
|
|
516
541
|
return this.dropElementIds;
|
|
517
542
|
}
|
|
@@ -523,8 +548,14 @@ export class Monitor {
|
|
|
523
548
|
if (this.dropElementsTree.has(id)) {
|
|
524
549
|
this.dropElementsTree.delete(id);
|
|
525
550
|
}
|
|
526
|
-
|
|
527
|
-
|
|
551
|
+
else {
|
|
552
|
+
const parentId = this.dropParentById.get(id);
|
|
553
|
+
if (parentId != null) {
|
|
554
|
+
this.dropNodesById.get(parentId)?.children?.delete(id);
|
|
555
|
+
}
|
|
556
|
+
}
|
|
557
|
+
this.dropNodesById.delete(id);
|
|
558
|
+
this.dropParentById.delete(id);
|
|
528
559
|
}
|
|
529
560
|
/**
|
|
530
561
|
* Updates the layout and configuration for a registered drop element.
|
|
@@ -534,28 +565,34 @@ export class Monitor {
|
|
|
534
565
|
* @param data - Optional new data
|
|
535
566
|
*/
|
|
536
567
|
updateDropElement(id, layout, config, data) {
|
|
537
|
-
const target = this.
|
|
568
|
+
const target = this.dropNodesById.get(id);
|
|
538
569
|
if (target) {
|
|
570
|
+
const nextIndex = config?.index || target.layout.index;
|
|
571
|
+
const nextZIndex = config?.zIndex || target.layout.zIndex;
|
|
572
|
+
const nextFlexDirection = config?.flexDirection || target.layout.flexDirection;
|
|
573
|
+
const changed = target.layout.x !== layout.x ||
|
|
574
|
+
target.layout.y !== layout.y ||
|
|
575
|
+
target.layout.width !== layout.width ||
|
|
576
|
+
target.layout.height !== layout.height ||
|
|
577
|
+
target.layout.index !== nextIndex ||
|
|
578
|
+
target.layout.zIndex !== nextZIndex ||
|
|
579
|
+
target.layout.flexDirection !== nextFlexDirection;
|
|
539
580
|
target.layout.x = layout.x;
|
|
540
581
|
target.layout.y = layout.y;
|
|
541
582
|
target.layout.width = layout.width;
|
|
542
583
|
target.layout.height = layout.height;
|
|
543
|
-
target.layout.index =
|
|
544
|
-
target.layout.zIndex =
|
|
545
|
-
target.layout.flexDirection =
|
|
546
|
-
config?.flexDirection || target.layout.flexDirection;
|
|
584
|
+
target.layout.index = nextIndex;
|
|
585
|
+
target.layout.zIndex = nextZIndex;
|
|
586
|
+
target.layout.flexDirection = nextFlexDirection;
|
|
547
587
|
target.data = data || target.data;
|
|
548
588
|
target.canDrop = config?.canDrop || target.canDrop;
|
|
549
|
-
|
|
550
|
-
|
|
589
|
+
// Layout listeners (selection overlays, highlight rects) only react to
|
|
590
|
+
// geometry/order. Re-measures land here at input rate and are usually
|
|
591
|
+
// no-ops — broadcasting those floods every subscriber for nothing.
|
|
592
|
+
if (!changed) {
|
|
593
|
+
return;
|
|
551
594
|
}
|
|
552
|
-
|
|
553
|
-
const parent = this.findDropTargetParent(id, this.dropElementsTree);
|
|
554
|
-
if (parent) {
|
|
555
|
-
parent.children?.set(id, target);
|
|
556
|
-
}
|
|
557
|
-
}
|
|
558
|
-
const frameKey = this.findFrameKeyFor(id, this.dropElementsTree, null);
|
|
595
|
+
const frameKey = this.findFrameKeyFor(id);
|
|
559
596
|
this.events.next({
|
|
560
597
|
type: DnDEventType.Layout,
|
|
561
598
|
target: id,
|
|
@@ -572,45 +609,19 @@ export class Monitor {
|
|
|
572
609
|
}
|
|
573
610
|
}
|
|
574
611
|
/**
|
|
575
|
-
* Resolves the frame space an element (or any of its ancestors) belongs to
|
|
576
|
-
*
|
|
577
|
-
*/
|
|
578
|
-
findFrameKeyFor(id, tree, inherited) {
|
|
579
|
-
if (!tree)
|
|
580
|
-
return null;
|
|
581
|
-
for (const [key, value] of tree) {
|
|
582
|
-
const frameKey = value.frameKey ?? inherited;
|
|
583
|
-
if (key === id) {
|
|
584
|
-
return frameKey;
|
|
585
|
-
}
|
|
586
|
-
const childResult = this.findFrameKeyFor(id, value.children, frameKey);
|
|
587
|
-
if (childResult !== null) {
|
|
588
|
-
return childResult;
|
|
589
|
-
}
|
|
590
|
-
}
|
|
591
|
-
return null;
|
|
592
|
-
}
|
|
593
|
-
/**
|
|
594
|
-
* Finds a drop target by ID in the tree structure.
|
|
595
|
-
* @param id - The ID to search for
|
|
596
|
-
* @param tree - The tree to search in
|
|
597
|
-
* @returns The drop item or null if not found
|
|
612
|
+
* Resolves the frame space an element (or any of its ancestors) belongs to
|
|
613
|
+
* by walking the parent chain — O(depth).
|
|
598
614
|
* @private
|
|
599
615
|
*/
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
const target = this.findDropTarget(id, value.children);
|
|
610
|
-
if (target) {
|
|
611
|
-
return target;
|
|
612
|
-
}
|
|
613
|
-
}
|
|
616
|
+
findFrameKeyFor(id) {
|
|
617
|
+
let current = id;
|
|
618
|
+
while (current != null) {
|
|
619
|
+
const node = this.dropNodesById.get(current);
|
|
620
|
+
if (!node)
|
|
621
|
+
return null;
|
|
622
|
+
if (node.frameKey)
|
|
623
|
+
return node.frameKey;
|
|
624
|
+
current = this.dropParentById.get(current);
|
|
614
625
|
}
|
|
615
626
|
return null;
|
|
616
627
|
}
|
|
@@ -692,30 +703,6 @@ export class Monitor {
|
|
|
692
703
|
}
|
|
693
704
|
return true;
|
|
694
705
|
}
|
|
695
|
-
/**
|
|
696
|
-
* Finds the parent of a drop target by ID.
|
|
697
|
-
* @param id - The ID of the child drop target
|
|
698
|
-
* @param tree - The tree to search in
|
|
699
|
-
* @returns The parent drop item or null if not found
|
|
700
|
-
* @private
|
|
701
|
-
*/
|
|
702
|
-
findDropTargetParent(id, tree) {
|
|
703
|
-
if (!tree) {
|
|
704
|
-
return null;
|
|
705
|
-
}
|
|
706
|
-
for (const [, value] of tree) {
|
|
707
|
-
if (value.children && value.children.has(id)) {
|
|
708
|
-
return value;
|
|
709
|
-
}
|
|
710
|
-
else {
|
|
711
|
-
const parent = this.findDropTargetParent(id, value.children);
|
|
712
|
-
if (parent) {
|
|
713
|
-
return parent;
|
|
714
|
-
}
|
|
715
|
-
}
|
|
716
|
-
}
|
|
717
|
-
return null;
|
|
718
|
-
}
|
|
719
706
|
/**
|
|
720
707
|
* Gets all drop targets that contain the given coordinates.
|
|
721
708
|
* @param dropCoords - The coordinates to check
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Monitor.js","sourceRoot":"","sources":["../../src/monitor/Monitor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Monitor.js","sourceRoot":"","sources":["../../src/monitor/Monitor.ts"],"names":[],"mappings":"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"}
|