API reference
Every public class, method, and event in @codexo/exojs. Generated from source.
classInteractionEvent
DOM-Event-shaped envelope dispatched by InteractionSystem to interactive scene nodes. Bubbles up the *entire* parent chain - `target` stays pinned to the hit-deepest node while `currentTarget` advances to each ancestor, whether or not that ancestor is itself interactive. Handlers may call InteractionEvent.stopPropagation to halt the bubble. The envelope deliberately exposes no native `PointerEvent`: engine events are frame-synchronous and outlive the platform event they came from. It does have InteractionEvent.preventDefault, but only for suppressing this event's own engine-level default (currently: the automatic drag-candidate creation a `pointerdown` would otherwise start - see that method's own doc comment). It never suppresses a *browser*-native default (touch scrolling, text selection, the native context menu, ...); those are handled separately and synchronously at the `InputSystem` platform-event boundary, before this engine-level event is even constructed.
import { InteractionEvent } from '@codexo/exojs'DOM-Event-shaped envelope dispatched by InteractionSystem to interactive scene nodes. Bubbles up the *entire* parent chain - `target` stays pinned to the hit-deepest node while `currentTarget` advances to each ancestor, whether or not that ancestor is itself interactive. Handlers may call InteractionEvent.stopPropagation to halt the bubble.
The envelope deliberately exposes no native `PointerEvent`: engine events are frame-synchronous and outlive the platform event they came from. It does have InteractionEvent.preventDefault, but only for suppressing this event's own engine-level default (currently: the automatic drag-candidate creation a `pointerdown` would otherwise start - see that method's own doc comment). It never suppresses a *browser*-native default (touch scrolling, text selection, the native context menu, ...); those are handled separately and synchronously at the `InputSystem` platform-event boundary, before this engine-level event is even constructed.
new(type: InteractionEventTypeString literal union of every interaction event the InteractionSystem can deliver to a RenderNode. Handlers attach via the node's `interactive*` API., target: RenderNodeSceneNode that can produce visual output. Adds the rendering pipeline features on top of the structural transform/bounds carried by SceneNode: post-process `fi…, pointer: PointerUnified mouse / touch / pen pointer. Wraps a single browser `PointerEvent.pointerId` and writes its state (position, buttons, pressure, tilt, etc.) into the en…, x: number, y: number): InteractionEventpreventDefault(): voidstopPropagation(): voidx: numbery: numberdefaultPrevented: booleanpropagationStopped: boolean