@flighthq/interaction 0.5.1-next.685.f72fc7f → 0.5.1-next.704.19c91ec

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/README.md CHANGED
@@ -13,5 +13,5 @@ Import the supported application-facing API from `@flighthq/interaction`. The `@
13
13
  This package is part of the locked-version Flight SDK graph. Applications may instead install and import `@flighthq/sdk` when package-level tree shaking is sufficient.
14
14
 
15
15
  - [Flight project](https://github.com/flighthq/flight)
16
- - [Source for @flighthq/interaction@0.5.1-next.685.f72fc7f](https://github.com/flighthq/flight/tree/f72fc7feaa9653d950f39c7d2fe6365f48e82e51/packages/interaction)
17
- - [License](https://github.com/flighthq/flight/blob/f72fc7feaa9653d950f39c7d2fe6365f48e82e51/LICENSE.md)
16
+ - [Source for @flighthq/interaction@0.5.1-next.704.19c91ec](https://github.com/flighthq/flight/tree/19c91ec3e569d6b3b471682726465a79fba9f8cb/packages/interaction)
17
+ - [License](https://github.com/flighthq/flight/blob/19c91ec3e569d6b3b471682726465a79fba9f8cb/LICENSE.md)
package/dist/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export { applyNodeInteractiveStates, captureInteractionPointer, clearFocus, connectFocusNavigation, connectInputToInteraction, connectInteractionSignal, containsNode2D, createFocusManager, createInteractionManager, createNodeInteractionState, createNodeInteractiveStateBinding, describeGraphHit, disableInteractionGuards, disconnectInteractionSignal, dispatchInteractionContextMenu, dispatchInteractionKeyDown, dispatchInteractionKeyUp, dispatchInteractionPointerCancel, dispatchInteractionPointerDown, dispatchInteractionPointerMove, dispatchInteractionPointerUp, dispatchInteractionWheel, disposeNodeInteractiveStateBinding, enableInteractionGuards, enableInteractionSignals, enableNodeInteractionState, explainInteractionHitEligibility, explainNodeInteractiveStateBinding, findGraphHitTarget, findGraphHitTargetPrecise, findGraphHitTargets, findGraphHitTargetsPrecise, findSpatialInteractionTarget, focusNextNode, focusNodeInDirection, focusPreviousNode, getFocusOrder, getFocusedNode, getInteractionSignals, getNode2DOverlapRectangle, getNodeCursor, getNodeHitArea, getNodeInteractionState, getNodeTabIndex, hitTestAreaQuery, hitTestAreaQueryCircle, hitTestGraphLocalBounds, hitTestGraphPoint, hitTestGraphPointPrecise, hitTestNode2Ds, hitTestNode2DsShape, hitTestNodeRegion, invalidateInteractionCursor, isNodeFocusable, isNodeFocused, isNodeHitTestEnabled, isNodePointerDoubleClickEnabled, refreshInteractionSpatialIndex, registerSpriteHitTest, registerDefaultHitTests, registerHitTest, registerHitTestPrecise, registerShapeHitTest, registerTextHitTest, releaseInteractionPointer, setFocusedNode, setInteractionConnectGuard, setNodeCursor, setNodeFocusable, setNodeHitArea, setNodeHitTestEnabled, setNodePointerDoubleClickEnabled, setNodeTabIndex, } from './contract';
1
+ export { applyNodeInteractiveStates, captureInteractionPointer, clearFocus, connectFocusNavigation, connectInputToInteraction, connectInteractionDispatchLayer, connectInteractionSignal, containsNode2D, createFocusManager, createInteractionManager, createNodeInteractionState, createNodeInteractiveStateBinding, describeGraphHit, disableInteractionGuards, disconnectInteractionSignal, dispatchInteractionContextMenu, dispatchInteractionKeyDown, dispatchInteractionKeyUp, dispatchInteractionPointerCancel, dispatchInteractionPointerDown, dispatchInteractionPointerMove, dispatchInteractionPointerUp, dispatchInteractionWheel, disposeNodeInteractiveStateBinding, enableInteractionGuards, enableInteractionSignals, enableNodeInteractionState, explainInteractionHitEligibility, explainNodeInteractiveStateBinding, findGraphHitTarget, findGraphHitTargetPrecise, findGraphHitTargets, findGraphHitTargetsPrecise, findSpatialInteractionTarget, focusNextNode, focusNodeInDirection, focusPreviousNode, getFocusOrder, getFocusedNode, getInteractionSignals, getNode2DOverlapRectangle, getNodeCursor, getNodeHitArea, getNodeInteractionState, getNodeTabIndex, hitTestAreaQuery, hitTestAreaQueryCircle, hitTestGraphLocalBounds, hitTestGraphPoint, hitTestGraphPointPrecise, hitTestNode2Ds, hitTestNode2DsShape, hitTestNodeRegion, invalidateInteractionCursor, isNodeFocusable, isNodeFocused, isNodeHitTestEnabled, isNodePointerDoubleClickEnabled, refreshInteractionSpatialIndex, registerSpriteHitTest, registerDefaultHitTests, registerHitTest, registerHitTestPrecise, registerShapeHitTest, registerTextHitTest, releaseInteractionPointer, setFocusedNode, setInteractionConnectGuard, setNodeCursor, setNodeFocusable, setNodeHitArea, setNodeHitTestEnabled, setNodePointerDoubleClickEnabled, setNodeTabIndex, } from './contract';
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,UAAU,EACV,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,cAAc,EACd,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC1B,iCAAiC,EACjC,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,gCAAgC,EAChC,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,EAC5B,wBAAwB,EACxB,kCAAkC,EAClC,uBAAuB,EACvB,wBAAwB,EACxB,0BAA0B,EAC1B,gCAAgC,EAChC,kCAAkC,EAClC,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,0BAA0B,EAC1B,4BAA4B,EAC5B,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,qBAAqB,EACrB,yBAAyB,EACzB,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC3B,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,+BAA+B,EAC/B,8BAA8B,EAC9B,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAC1B,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,gCAAgC,EAChC,eAAe,GAChB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,UAAU,EACV,sBAAsB,EACtB,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACxB,cAAc,EACd,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC1B,iCAAiC,EACjC,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,gCAAgC,EAChC,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,EAC5B,wBAAwB,EACxB,kCAAkC,EAClC,uBAAuB,EACvB,wBAAwB,EACxB,0BAA0B,EAC1B,gCAAgC,EAChC,kCAAkC,EAClC,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,0BAA0B,EAC1B,4BAA4B,EAC5B,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,qBAAqB,EACrB,yBAAyB,EACzB,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC3B,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,+BAA+B,EAC/B,8BAA8B,EAC9B,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAC1B,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,gCAAgC,EAChC,eAAe,GAChB,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export { applyNodeInteractiveStates, captureInteractionPointer, clearFocus, connectFocusNavigation, connectInputToInteraction, connectInteractionSignal, containsNode2D, createFocusManager, createInteractionManager, createNodeInteractionState, createNodeInteractiveStateBinding, describeGraphHit, disableInteractionGuards, disconnectInteractionSignal, dispatchInteractionContextMenu, dispatchInteractionKeyDown, dispatchInteractionKeyUp, dispatchInteractionPointerCancel, dispatchInteractionPointerDown, dispatchInteractionPointerMove, dispatchInteractionPointerUp, dispatchInteractionWheel, disposeNodeInteractiveStateBinding, enableInteractionGuards, enableInteractionSignals, enableNodeInteractionState, explainInteractionHitEligibility, explainNodeInteractiveStateBinding, findGraphHitTarget, findGraphHitTargetPrecise, findGraphHitTargets, findGraphHitTargetsPrecise, findSpatialInteractionTarget, focusNextNode, focusNodeInDirection, focusPreviousNode, getFocusOrder, getFocusedNode, getInteractionSignals, getNode2DOverlapRectangle, getNodeCursor, getNodeHitArea, getNodeInteractionState, getNodeTabIndex, hitTestAreaQuery, hitTestAreaQueryCircle, hitTestGraphLocalBounds, hitTestGraphPoint, hitTestGraphPointPrecise, hitTestNode2Ds, hitTestNode2DsShape, hitTestNodeRegion, invalidateInteractionCursor, isNodeFocusable, isNodeFocused, isNodeHitTestEnabled, isNodePointerDoubleClickEnabled, refreshInteractionSpatialIndex, registerSpriteHitTest, registerDefaultHitTests, registerHitTest, registerHitTestPrecise, registerShapeHitTest, registerTextHitTest, releaseInteractionPointer, setFocusedNode, setInteractionConnectGuard, setNodeCursor, setNodeFocusable, setNodeHitArea, setNodeHitTestEnabled, setNodePointerDoubleClickEnabled, setNodeTabIndex, } from './contract';
1
+ export { applyNodeInteractiveStates, captureInteractionPointer, clearFocus, connectFocusNavigation, connectInputToInteraction, connectInteractionDispatchLayer, connectInteractionSignal, containsNode2D, createFocusManager, createInteractionManager, createNodeInteractionState, createNodeInteractiveStateBinding, describeGraphHit, disableInteractionGuards, disconnectInteractionSignal, dispatchInteractionContextMenu, dispatchInteractionKeyDown, dispatchInteractionKeyUp, dispatchInteractionPointerCancel, dispatchInteractionPointerDown, dispatchInteractionPointerMove, dispatchInteractionPointerUp, dispatchInteractionWheel, disposeNodeInteractiveStateBinding, enableInteractionGuards, enableInteractionSignals, enableNodeInteractionState, explainInteractionHitEligibility, explainNodeInteractiveStateBinding, findGraphHitTarget, findGraphHitTargetPrecise, findGraphHitTargets, findGraphHitTargetsPrecise, findSpatialInteractionTarget, focusNextNode, focusNodeInDirection, focusPreviousNode, getFocusOrder, getFocusedNode, getInteractionSignals, getNode2DOverlapRectangle, getNodeCursor, getNodeHitArea, getNodeInteractionState, getNodeTabIndex, hitTestAreaQuery, hitTestAreaQueryCircle, hitTestGraphLocalBounds, hitTestGraphPoint, hitTestGraphPointPrecise, hitTestNode2Ds, hitTestNode2DsShape, hitTestNodeRegion, invalidateInteractionCursor, isNodeFocusable, isNodeFocused, isNodeHitTestEnabled, isNodePointerDoubleClickEnabled, refreshInteractionSpatialIndex, registerSpriteHitTest, registerDefaultHitTests, registerHitTest, registerHitTestPrecise, registerShapeHitTest, registerTextHitTest, releaseInteractionPointer, setFocusedNode, setInteractionConnectGuard, setNodeCursor, setNodeFocusable, setNodeHitArea, setNodeHitTestEnabled, setNodePointerDoubleClickEnabled, setNodeTabIndex, } from './contract';
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,UAAU,EACV,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,cAAc,EACd,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC1B,iCAAiC,EACjC,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,gCAAgC,EAChC,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,EAC5B,wBAAwB,EACxB,kCAAkC,EAClC,uBAAuB,EACvB,wBAAwB,EACxB,0BAA0B,EAC1B,gCAAgC,EAChC,kCAAkC,EAClC,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,0BAA0B,EAC1B,4BAA4B,EAC5B,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,qBAAqB,EACrB,yBAAyB,EACzB,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC3B,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,+BAA+B,EAC/B,8BAA8B,EAC9B,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAC1B,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,gCAAgC,EAChC,eAAe,GAChB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,UAAU,EACV,sBAAsB,EACtB,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACxB,cAAc,EACd,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC1B,iCAAiC,EACjC,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,gCAAgC,EAChC,8BAA8B,EAC9B,8BAA8B,EAC9B,4BAA4B,EAC5B,wBAAwB,EACxB,kCAAkC,EAClC,uBAAuB,EACvB,wBAAwB,EACxB,0BAA0B,EAC1B,gCAAgC,EAChC,kCAAkC,EAClC,kBAAkB,EAClB,yBAAyB,EACzB,mBAAmB,EACnB,0BAA0B,EAC1B,4BAA4B,EAC5B,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,qBAAqB,EACrB,yBAAyB,EACzB,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC3B,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,+BAA+B,EAC/B,8BAA8B,EAC9B,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAC1B,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,qBAAqB,EACrB,gCAAgC,EAChC,eAAe,GAChB,MAAM,YAAY,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { FocusEventData, InteractionConnectGuard, InteractionInputSource, InteractionManager, InteractionManagerOptions, InteractionPointerOptions, InteractionSignalName, InteractionSignals, KeyboardEventData, NodeAny, PointerEventData, SignalConnectOptions } from '@flighthq/types/contract';
1
+ import type { FocusEventData, InteractionConnectGuard, InteractionDispatchLayer, InteractionDispatchLayerOptions, InteractionInputSource, InteractionManager, InteractionManagerOptions, InteractionPointerOptions, InteractionSignalName, InteractionSignals, KeyboardEventData, NodeAny, PointerEventData, SignalConnectOptions } from '@flighthq/types/contract';
2
2
  export declare function captureInteractionPointer<N extends NodeAny>(manager: InteractionManager<N>, pointerId: number, target: N): void;
3
3
  /**
4
4
  * Wires an input source's pointer/keyboard signals into an interaction manager, forwarding each
@@ -16,6 +16,12 @@ export declare function captureInteractionPointer<N extends NodeAny>(manager: In
16
16
  * point, since that offset moves with scroll and layout.
17
17
  */
18
18
  export declare function connectInputToInteraction<N extends NodeAny>(input: InteractionInputSource, manager: InteractionManager<N>, coordScale?: number): () => void;
19
+ /**
20
+ * Adds a priority-ordered layer before Flight signal dispatch and returns an idempotent disconnect.
21
+ * Equal priorities retain connection order. Each dispatch snapshots the current list: additions wait
22
+ * for the next dispatch, while a layer removed during the walk still receives the current one.
23
+ */
24
+ export declare function connectInteractionDispatchLayer<N extends NodeAny>(manager: InteractionManager<N>, layer: InteractionDispatchLayer<N>, options?: Readonly<InteractionDispatchLayerOptions>): () => void;
19
25
  export declare function connectInteractionSignal<N extends NodeAny, Name extends InteractionSignalName>(manager: InteractionManager<N>, target: N, name: Name, slot: InteractionSignalSlot<Name>, options?: Readonly<SignalConnectOptions>): void;
20
26
  export declare function createInteractionManager<N extends NodeAny>(root: N, options?: Readonly<InteractionManagerOptions>): InteractionManager<N>;
21
27
  export declare function createInteractionSignals(): InteractionSignals;
@@ -1 +1 @@
1
- {"version":3,"file":"interactionManager.d.ts","sourceRoot":"","sources":["../src/interactionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactionManager.d.ts","sourceRoot":"","sources":["../src/interactionManager.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,34 @@ export function connectInputToInteraction(input, manager, coordScale = 1) {
49
49
  resetInteractionClickStates(manager);
50
50
  };
51
51
  }
52
+ /**
53
+ * Adds a priority-ordered layer before Flight signal dispatch and returns an idempotent disconnect.
54
+ * Equal priorities retain connection order. Each dispatch snapshots the current list: additions wait
55
+ * for the next dispatch, while a layer removed during the walk still receives the current one.
56
+ */
57
+ export function connectInteractionDispatchLayer(manager, layer, options = {}) {
58
+ const entry = { layer, priority: options.priority ?? 0 };
59
+ const layers = (manager.dispatchLayers ??= []);
60
+ let index = 0;
61
+ while (index < layers.length && entry.priority <= layers[index].priority)
62
+ index++;
63
+ layers.splice(index, 0, entry);
64
+ let connected = true;
65
+ return () => {
66
+ if (!connected)
67
+ return;
68
+ connected = false;
69
+ const current = manager.dispatchLayers;
70
+ if (current === null)
71
+ return;
72
+ const currentIndex = current.indexOf(entry);
73
+ if (currentIndex === -1)
74
+ return;
75
+ current.splice(currentIndex, 1);
76
+ if (current.length === 0)
77
+ manager.dispatchLayers = null;
78
+ };
79
+ }
52
80
  export function connectInteractionSignal(manager, target, name, slot, options) {
53
81
  const signal = enableInteractionSignals(target)[name];
54
82
  const trackedSlot = getTrackedInteractionSignalSlot(manager, target, name, slot);
@@ -77,6 +105,7 @@ export function createInteractionManager(root, options = {}) {
77
105
  return {
78
106
  cursorBackend: options.cursorBackend ?? null,
79
107
  cursorTarget: null,
108
+ dispatchLayers: null,
80
109
  doubleClickDelay: options.doubleClickDelay ?? 500,
81
110
  doubleClickDistance: options.doubleClickDistance ?? 4,
82
111
  enabled: options.enabled ?? true,
@@ -149,7 +178,10 @@ export function dispatchInteractionPointerCancel(manager, x, y, options) {
149
178
  manager.pointerCaptures.delete(pointerId);
150
179
  setPointerData(target, null, x, y, -1, 0, 0, options);
151
180
  if (target !== null) {
152
- emitInteractionSignal(target, manager.root, 'onPointerCancel', _pointerData);
181
+ if (manager.dispatchLayers === null ||
182
+ dispatchInteractionLayers(manager, target, 'onPointerCancel', _pointerData)) {
183
+ emitInteractionSignal(target, manager.root, 'onPointerCancel', _pointerData);
184
+ }
153
185
  }
154
186
  if (oldTarget !== null) {
155
187
  dispatchPointerRolloverChange(manager, oldTarget, null);
@@ -166,7 +198,9 @@ export function dispatchInteractionPointerDown(manager, x, y, button = 0, option
166
198
  return;
167
199
  state.pointerDownTarget = target;
168
200
  setPointerData(target, null, x, y, button, 0, 0, options);
169
- emitInteractionSignal(target, manager.root, 'onPointerDown', _pointerData);
201
+ if (manager.dispatchLayers === null || dispatchInteractionLayers(manager, target, 'onPointerDown', _pointerData)) {
202
+ emitInteractionSignal(target, manager.root, 'onPointerDown', _pointerData);
203
+ }
170
204
  }
171
205
  export function dispatchInteractionPointerMove(manager, x, y, button = 0, options) {
172
206
  // Run the move body when a rollover subscriber needs it OR a cursor backend is active — a scene that
@@ -187,7 +221,9 @@ export function dispatchInteractionPointerMove(manager, x, y, button = 0, option
187
221
  dispatchPointerRolloverChange(manager, oldTarget, target);
188
222
  }
189
223
  if (target !== null) {
190
- emitInteractionSignal(target, manager.root, 'onPointerMove', _pointerData);
224
+ if (manager.dispatchLayers === null || dispatchInteractionLayers(manager, target, 'onPointerMove', _pointerData)) {
225
+ emitInteractionSignal(target, manager.root, 'onPointerMove', _pointerData);
226
+ }
191
227
  }
192
228
  }
193
229
  export function dispatchInteractionPointerUp(manager, x, y, button = 0, time, options) {
@@ -202,15 +238,22 @@ export function dispatchInteractionPointerUp(manager, x, y, button = 0, time, op
202
238
  state.pointerDownTarget = null;
203
239
  setPointerData(target ?? downTarget, null, x, y, button, 0, 0, options);
204
240
  if (target !== null) {
205
- emitInteractionSignal(target, manager.root, 'onPointerUp', _pointerData);
241
+ if (manager.dispatchLayers === null || dispatchInteractionLayers(manager, target, 'onPointerUp', _pointerData)) {
242
+ emitInteractionSignal(target, manager.root, 'onPointerUp', _pointerData);
243
+ }
206
244
  }
207
245
  if (downTarget === null)
208
246
  return;
209
247
  if (target === downTarget) {
210
- emitInteractionSignal(target, manager.root, 'onClick', _pointerData);
248
+ if (manager.dispatchLayers === null || dispatchInteractionLayers(manager, target, 'onClick', _pointerData)) {
249
+ emitInteractionSignal(target, manager.root, 'onClick', _pointerData);
250
+ }
211
251
  const legacyElapsed = clickTime - state.lastClickTime;
212
252
  if (state.lastClickTarget === target && legacyElapsed >= 0 && legacyElapsed <= manager.doubleClickDelay) {
213
- emitInteractionSignal(target, manager.root, 'onDoubleClick', _pointerData);
253
+ if (manager.dispatchLayers === null ||
254
+ dispatchInteractionLayers(manager, target, 'onDoubleClick', _pointerData)) {
255
+ emitInteractionSignal(target, manager.root, 'onDoubleClick', _pointerData);
256
+ }
214
257
  state.lastClickTarget = null;
215
258
  state.lastClickTime = -Infinity;
216
259
  }
@@ -222,7 +265,10 @@ export function dispatchInteractionPointerUp(manager, x, y, button = 0, time, op
222
265
  }
223
266
  else {
224
267
  resetInteractionClickState(state);
225
- emitInteractionSignal(downTarget, manager.root, 'onReleaseOutside', _pointerData);
268
+ if (manager.dispatchLayers === null ||
269
+ dispatchInteractionLayers(manager, downTarget, 'onReleaseOutside', _pointerData)) {
270
+ emitInteractionSignal(downTarget, manager.root, 'onReleaseOutside', _pointerData);
271
+ }
226
272
  }
227
273
  }
228
274
  export function dispatchInteractionWheel(manager, x, y, deltaX = 0, deltaY = 0, options) {
@@ -254,32 +300,45 @@ export function setInteractionConnectGuard(guard) {
254
300
  interactionConnectGuard = guard;
255
301
  }
256
302
  function dispatchKeyboardSignal(manager, name, key, keyCode, modifiers) {
257
- if (!manager.enabled || !hasInteractionSignalSubscriber(manager, name))
303
+ if (!manager.enabled || (manager.dispatchLayers === null && !hasInteractionSignalSubscriber(manager, name)))
258
304
  return;
259
305
  setKeyboardData(key, keyCode, modifiers);
260
- emitInteractionSignal(manager.root, manager.root, name, _keyboardData);
306
+ if (manager.dispatchLayers === null || dispatchInteractionLayers(manager, manager.root, name, _keyboardData)) {
307
+ emitInteractionSignal(manager.root, manager.root, name, _keyboardData);
308
+ }
261
309
  }
262
310
  function dispatchPointerRolloverChange(manager, oldTarget, target) {
263
311
  if (oldTarget !== null) {
264
- emitInteractionSignal(oldTarget, manager.root, 'onPointerOut', _pointerData);
312
+ if (manager.dispatchLayers === null ||
313
+ dispatchInteractionLayers(manager, oldTarget, 'onPointerOut', _pointerData)) {
314
+ emitInteractionSignal(oldTarget, manager.root, 'onPointerOut', _pointerData);
315
+ }
265
316
  }
266
317
  const oldChain = oldTarget !== null ? getInteractionChain(oldTarget, manager.root) : [];
267
318
  const newChain = target !== null ? getInteractionChain(target, manager.root) : [];
268
319
  for (const node of oldChain) {
269
320
  if (newChain.indexOf(node) === -1) {
270
321
  setInteractionSignalCurrentTarget(_pointerData, node, node);
271
- emitInteractionSignalDirect(node, 'onPointerRollOut', _pointerData);
322
+ if (manager.dispatchLayers === null ||
323
+ dispatchInteractionLayers(manager, node, 'onPointerRollOut', _pointerData)) {
324
+ emitInteractionSignalDirect(node, 'onPointerRollOut', _pointerData);
325
+ }
272
326
  }
273
327
  }
274
328
  for (let i = newChain.length - 1; i >= 0; i--) {
275
329
  const node = newChain[i];
276
330
  if (oldChain.indexOf(node) === -1) {
277
331
  setInteractionSignalCurrentTarget(_pointerData, node, node);
278
- emitInteractionSignalDirect(node, 'onPointerRollOver', _pointerData);
332
+ if (manager.dispatchLayers === null ||
333
+ dispatchInteractionLayers(manager, node, 'onPointerRollOver', _pointerData)) {
334
+ emitInteractionSignalDirect(node, 'onPointerRollOver', _pointerData);
335
+ }
279
336
  }
280
337
  }
281
338
  if (target !== null) {
282
- emitInteractionSignal(target, manager.root, 'onPointerOver', _pointerData);
339
+ if (manager.dispatchLayers === null || dispatchInteractionLayers(manager, target, 'onPointerOver', _pointerData)) {
340
+ emitInteractionSignal(target, manager.root, 'onPointerOver', _pointerData);
341
+ }
283
342
  }
284
343
  manager.cursorTarget = target;
285
344
  applyInteractionCursor(manager, target);
@@ -317,7 +376,9 @@ function dispatchPointerSignalAt(manager, name, x, y, button, deltaX = 0, deltaY
317
376
  if (target === null)
318
377
  return;
319
378
  setPointerData(target, null, x, y, button, deltaX, deltaY, options);
320
- emitInteractionSignal(target, manager.root, name, _pointerData);
379
+ if (manager.dispatchLayers === null || dispatchInteractionLayers(manager, target, name, _pointerData)) {
380
+ emitInteractionSignal(target, manager.root, name, _pointerData);
381
+ }
321
382
  }
322
383
  function emitInteractionSignal(target, root, name, data) {
323
384
  let current = target;
@@ -336,6 +397,17 @@ function emitInteractionSignalDirect(target, name, data) {
336
397
  if (signal !== null)
337
398
  emitSignal(signal, data);
338
399
  }
400
+ function dispatchInteractionLayers(manager, target, name, data) {
401
+ const layers = manager.dispatchLayers;
402
+ if (layers === null)
403
+ return true;
404
+ const snapshot = layers.slice();
405
+ for (let i = 0; i < snapshot.length; i++) {
406
+ if (!snapshot[i].layer(target, name, data))
407
+ return false;
408
+ }
409
+ return true;
410
+ }
339
411
  function decrementInteractionSignalSubscriberCount(manager, name) {
340
412
  const count = manager.signalSubscriberCounts.get(name) ?? 0;
341
413
  if (count <= 1) {
@@ -364,7 +436,10 @@ function dispatchPointerDoubleClick(manager, state, target, x, y, button, time)
364
436
  }
365
437
  if (isPointerDoubleClickCandidateValid(manager, state, target, x, y, button, time)) {
366
438
  resetPointerDoubleClickState(state);
367
- emitInteractionSignal(target, manager.root, 'onPointerDoubleClick', _pointerData);
439
+ if (manager.dispatchLayers === null ||
440
+ dispatchInteractionLayers(manager, target, 'onPointerDoubleClick', _pointerData)) {
441
+ emitInteractionSignal(target, manager.root, 'onPointerDoubleClick', _pointerData);
442
+ }
368
443
  return;
369
444
  }
370
445
  state.lastPointerClickButton = button;
@@ -488,6 +563,8 @@ function isPointerSignalNeeded(manager, names) {
488
563
  resetInteractionClickStates(manager);
489
564
  return false;
490
565
  }
566
+ if (manager.dispatchLayers !== null)
567
+ return true;
491
568
  for (const name of names) {
492
569
  if (hasInteractionSignalSubscriber(manager, name))
493
570
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"interactionManager.js","sourceRoot":"","sources":["../src/interactionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactionManager.js","sourceRoot":"","sources":["../src/interactionManager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flighthq/interaction",
3
- "version": "0.5.1-next.685.f72fc7f",
3
+ "version": "0.5.1-next.704.19c91ec",
4
4
  "author": "Joshua Granick and other contributors",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -38,19 +38,19 @@
38
38
  "clean:dist": "tsx ../../scripts/clean-package-dist.ts"
39
39
  },
40
40
  "dependencies": {
41
- "@flighthq/geometry": "0.5.1-next.685.f72fc7f",
42
- "@flighthq/node": "0.5.1-next.685.f72fc7f",
43
- "@flighthq/scene2d": "0.5.1-next.685.f72fc7f",
44
- "@flighthq/log": "0.5.1-next.685.f72fc7f",
45
- "@flighthq/path": "0.5.1-next.685.f72fc7f",
46
- "@flighthq/registry": "0.5.1-next.685.f72fc7f",
47
- "@flighthq/shape": "0.5.1-next.685.f72fc7f",
48
- "@flighthq/spatial": "0.5.1-next.685.f72fc7f",
49
- "@flighthq/signals": "0.5.1-next.685.f72fc7f",
50
- "@flighthq/bitmap": "0.5.1-next.685.f72fc7f",
51
- "@flighthq/text": "0.5.1-next.685.f72fc7f",
52
- "@flighthq/textlayout": "0.5.1-next.685.f72fc7f",
53
- "@flighthq/types": "0.5.1-next.685.f72fc7f"
41
+ "@flighthq/geometry": "0.5.1-next.704.19c91ec",
42
+ "@flighthq/node": "0.5.1-next.704.19c91ec",
43
+ "@flighthq/scene2d": "0.5.1-next.704.19c91ec",
44
+ "@flighthq/log": "0.5.1-next.704.19c91ec",
45
+ "@flighthq/path": "0.5.1-next.704.19c91ec",
46
+ "@flighthq/registry": "0.5.1-next.704.19c91ec",
47
+ "@flighthq/shape": "0.5.1-next.704.19c91ec",
48
+ "@flighthq/spatial": "0.5.1-next.704.19c91ec",
49
+ "@flighthq/signals": "0.5.1-next.704.19c91ec",
50
+ "@flighthq/bitmap": "0.5.1-next.704.19c91ec",
51
+ "@flighthq/text": "0.5.1-next.704.19c91ec",
52
+ "@flighthq/textlayout": "0.5.1-next.704.19c91ec",
53
+ "@flighthq/types": "0.5.1-next.704.19c91ec"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@flighthq/quadbatch": "*",
@@ -22,6 +22,7 @@ import { registerHitTest } from './hitTests';
22
22
  import {
23
23
  captureInteractionPointer,
24
24
  connectInputToInteraction,
25
+ connectInteractionDispatchLayer,
25
26
  connectInteractionSignal,
26
27
  createInteractionManager,
27
28
  createInteractionSignals,
@@ -121,6 +122,154 @@ describe('connectInputToInteraction', () => {
121
122
  });
122
123
  });
123
124
 
125
+ describe('connectInteractionDispatchLayer', () => {
126
+ it('allocates storage lazily and disconnects idempotently', () => {
127
+ const { manager } = createHitScene3D();
128
+ expect(manager.dispatchLayers).toBeNull();
129
+
130
+ const disconnect = connectInteractionDispatchLayer(manager, () => true);
131
+ expect(manager.dispatchLayers).toHaveLength(1);
132
+
133
+ disconnect();
134
+ disconnect();
135
+ expect(manager.dispatchLayers).toBeNull();
136
+ });
137
+
138
+ it('runs in descending priority with stable connection order for equal priorities', () => {
139
+ const { child, manager, root } = createHitScene3D();
140
+ const calls: string[] = [];
141
+ connectInteractionDispatchLayer(manager, () => (calls.push('low'), true), { priority: -1 });
142
+ connectInteractionDispatchLayer(manager, () => (calls.push('equal-a'), true), { priority: 5 });
143
+ connectInteractionDispatchLayer(manager, () => (calls.push('high'), true), { priority: 10 });
144
+ connectInteractionDispatchLayer(manager, () => (calls.push('equal-b'), true), { priority: 5 });
145
+ connectSignal(enableInteractionSignals(child).onPointerDown, () => calls.push('child'));
146
+ connectSignal(enableInteractionSignals(root).onPointerDown, () => calls.push('root'));
147
+
148
+ dispatchInteractionPointerDown(manager, 50, 50);
149
+
150
+ expect(calls).toEqual(['high', 'equal-a', 'equal-b', 'low', 'child', 'root']);
151
+ });
152
+
153
+ it('receives the resolved target and populated data before Flight signal bubbling', () => {
154
+ const { child, manager } = createHitScene3D();
155
+ const calls: string[] = [];
156
+ connectInteractionDispatchLayer(manager, (target, name, data) => {
157
+ calls.push('layer');
158
+ expect(target).toBe(child);
159
+ expect(name).toBe('onPointerDown');
160
+ expect(data).toMatchObject({ button: 2, pointerId: 7, pointerType: 'pen', x: 25, y: 40 });
161
+ return true;
162
+ });
163
+ connectSignal(enableInteractionSignals(child).onPointerDown, () => calls.push('signal'));
164
+
165
+ dispatchInteractionPointerDown(manager, 25, 40, 2, { pointerId: 7, pointerType: 'pen' });
166
+
167
+ expect(calls).toEqual(['layer', 'signal']);
168
+ });
169
+
170
+ it('stops at the first false layer and suppresses Flight signal bubbling', () => {
171
+ const { child, manager, root } = createHitScene3D();
172
+ const calls: string[] = [];
173
+ connectInteractionDispatchLayer(manager, () => (calls.push('high'), true), { priority: 10 });
174
+ connectInteractionDispatchLayer(manager, () => (calls.push('block'), false));
175
+ connectInteractionDispatchLayer(manager, () => (calls.push('low'), true), { priority: -10 });
176
+ connectSignal(enableInteractionSignals(child).onPointerDown, () => calls.push('child'));
177
+ connectSignal(enableInteractionSignals(root).onPointerDown, () => calls.push('root'));
178
+
179
+ dispatchInteractionPointerDown(manager, 50, 50);
180
+
181
+ expect(calls).toEqual(['high', 'block']);
182
+ });
183
+
184
+ it('suppresses only the blocked synthesized event', () => {
185
+ const { child, manager } = createHitScene3D();
186
+ const calls: string[] = [];
187
+ connectInteractionDispatchLayer(manager, (_target, name) => name !== 'onClick');
188
+ connectSignal(enableInteractionSignals(child).onPointerDown, () => calls.push('down'));
189
+ connectSignal(enableInteractionSignals(child).onPointerUp, () => calls.push('up'));
190
+ connectSignal(enableInteractionSignals(child).onClick, () => calls.push('click'));
191
+
192
+ dispatchClick(manager, 50, 50, 1000);
193
+
194
+ expect(calls).toEqual(['down', 'up']);
195
+ });
196
+
197
+ it('snapshots additions and removals for the current layer walk', () => {
198
+ const { manager } = createHitScene3D();
199
+ const calls: string[] = [];
200
+ let added = false;
201
+ let disconnectLater = () => {};
202
+ connectInteractionDispatchLayer(
203
+ manager,
204
+ () => {
205
+ calls.push('first');
206
+ disconnectLater();
207
+ if (!added) {
208
+ added = true;
209
+ connectInteractionDispatchLayer(manager, () => (calls.push('added'), true), { priority: 5 });
210
+ }
211
+ return true;
212
+ },
213
+ { priority: 10 },
214
+ );
215
+ disconnectLater = connectInteractionDispatchLayer(manager, () => (calls.push('later'), true));
216
+
217
+ dispatchInteractionPointerDown(manager, 50, 50);
218
+ dispatchInteractionPointerDown(manager, 50, 50);
219
+
220
+ expect(calls).toEqual(['first', 'later', 'first', 'added']);
221
+ });
222
+
223
+ it('observes every dispatched interaction path without Flight signal subscribers', () => {
224
+ const { child, manager } = createHitScene3D();
225
+ const names: string[] = [];
226
+ setNodePointerDoubleClickEnabled(child, true);
227
+ connectInteractionDispatchLayer(manager, (_target, name) => {
228
+ names.push(name);
229
+ return true;
230
+ });
231
+
232
+ dispatchInteractionPointerMove(manager, 50, 50);
233
+ dispatchClick(manager, 50, 50, 1000);
234
+ dispatchClick(manager, 50, 50, 1100);
235
+ dispatchInteractionPointerMove(manager, 500, 500);
236
+ dispatchInteractionContextMenu(manager, 50, 50);
237
+ dispatchInteractionWheel(manager, 50, 50, 0, -120);
238
+ dispatchInteractionKeyDown(manager, 'a', 65);
239
+ dispatchInteractionKeyUp(manager, 'a', 65);
240
+ dispatchInteractionPointerDown(manager, 50, 50);
241
+ dispatchInteractionPointerUp(manager, 500, 500);
242
+ dispatchInteractionPointerDown(manager, 50, 50);
243
+ dispatchInteractionPointerCancel(manager, 50, 50);
244
+
245
+ expect(names).toEqual([
246
+ 'onPointerRollOver',
247
+ 'onPointerRollOver',
248
+ 'onPointerOver',
249
+ 'onPointerMove',
250
+ 'onPointerDown',
251
+ 'onPointerUp',
252
+ 'onClick',
253
+ 'onPointerDown',
254
+ 'onPointerUp',
255
+ 'onClick',
256
+ 'onDoubleClick',
257
+ 'onPointerDoubleClick',
258
+ 'onPointerOut',
259
+ 'onPointerRollOut',
260
+ 'onPointerRollOut',
261
+ 'onContextMenu',
262
+ 'onWheel',
263
+ 'onKeyDown',
264
+ 'onKeyUp',
265
+ 'onPointerDown',
266
+ 'onReleaseOutside',
267
+ 'onPointerDown',
268
+ 'onPointerCancel',
269
+ ]);
270
+ });
271
+ });
272
+
124
273
  describe('connectInteractionSignal', () => {
125
274
  it('can use tracked subscribers without scanning for direct signal connections', () => {
126
275
  const kind = 'TrackedSubscriberHitTest';
@@ -171,6 +320,7 @@ describe('createInteractionManager', () => {
171
320
  const manager = createInteractionManager(root);
172
321
  expect(manager.enabled).toBe(true);
173
322
  expect(manager.cursorTarget).toBeNull();
323
+ expect(manager.dispatchLayers).toBeNull();
174
324
  expect(manager.pointerCaptures.size).toBe(0);
175
325
  expect(manager.pointerStates.size).toBe(0);
176
326
  expect(manager.root).toBe(root);