@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.
@@ -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,gCAgLrB,CAAC;AAEF,eAAe,WAAW,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
- return (<DnDContextProvider value={{
164
- monitor,
165
- isDragging,
166
- sv,
167
- svOverLayout,
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":"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"}
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,EAAE,MAAM,OAAO,CAAC;AAG9C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC;;;;;;;;;GASG;AACH,QAAA,MAAM,QAAQ,EAAE,EAAE,CAAC,iBAAiB,CAAC,aAAa,CAAC,CASlD,CAAC;AAEF,eAAe,QAAQ,CAAC"}
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
- return (<DropContextProvider value={{ parent: forId }}>
14
- {children}
15
- </DropContextProvider>);
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":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD;;;;;;;;;GASG;AACH,MAAM,QAAQ,GAAyC,CAAC,EACtD,QAAQ,EACR,KAAK,GACN,EAAE,EAAE;IACH,OAAO,CACL,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAC5C;MAAA,CAAC,QAAQ,CACX;IAAA,EAAE,mBAAmB,CAAC,CACvB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
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;IAkEtB,wCAAwC;;IAExC,0DAA0D;;IAE1D,sDAAsD;;CAGzD,CAAC;AAEF,eAAe,OAAO,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"}
@@ -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":"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"}
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;IAwJb,wCAAwC;;IAExC,wDAAwD;;IAExD,0CAA0C;;IAE1C,gDAAgD;;IAEhD,qDAAqD;;IAErD,0DAA0D;;CAG7D,CAAC;AAEF,eAAe,OAAO,CAAC"}
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"}
@@ -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
- setDropTarget(e.dropTarget || null);
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":"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"}
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';
@@ -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;AAC5C,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,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 information.
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":"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"}
1
+ {"version":3,"file":"Monitor.d.ts","sourceRoot":"","sources":["../../src/monitor/Monitor.ts"],"names":[],"mappings":"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"}
@@ -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 information.
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.events.next({
106
- type: DnDEventType.LayoutForceUpdate,
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
- this.dropElementsTree.set(this.dropElementIds, {
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.findDropTarget(parent, this.dropElementsTree);
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
- parentLayout.children.set(this.dropElementIds, {
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
- const parent = this.findDropTargetParent(id, this.dropElementsTree);
527
- parent?.children?.delete(id);
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.findDropTarget(id, this.dropElementsTree);
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 = config?.index || target.layout.index;
544
- target.layout.zIndex = config?.zIndex || 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
- if (this.dropElementsTree.has(id)) {
550
- this.dropElementsTree.set(id, target);
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
- else {
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
- * @private
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
- findDropTarget(id, tree) {
601
- if (!tree) {
602
- return null;
603
- }
604
- if (tree.has(id)) {
605
- return tree.get(id) || null;
606
- }
607
- for (const [, value] of tree) {
608
- if (value.children) {
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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mapples/dnd",
3
- "version": "1.2.0",
3
+ "version": "1.3.0",
4
4
  "description": "A powerful and flexible drag and drop library for React Native applications",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",