@react-three/fiber 10.0.0-canary.4a21acb → 10.0.0-canary.4bc4a97

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.
@@ -11,7 +11,6 @@ import { FrameTimingState, FrameCallback as FrameCallback$1, SchedulerApi, UseFr
11
11
  export { AddPhaseOptions, FrameControls, FrameNextControls, FrameTimingState, RootOptions, Scheduler, SchedulerApi, UseFrameNextOptions, UseFrameOptions, getScheduler } from '@pmndrs/scheduler';
12
12
  import { Options } from 'react-use-measure';
13
13
  import * as react_jsx_runtime from 'react/jsx-runtime';
14
- import { ThreeElement as ThreeElement$1, Euler as Euler$3 } from '@react-three/fiber';
15
14
  import { GroundedSkybox } from 'three/examples/jsm/objects/GroundedSkybox.js';
16
15
 
17
16
  function _mergeNamespaces(n, m) {
@@ -1638,9 +1637,9 @@ type EnvironmentProps = {
1638
1637
  blur?: number;
1639
1638
  backgroundBlurriness?: number;
1640
1639
  backgroundIntensity?: number;
1641
- backgroundRotation?: Euler$3;
1640
+ backgroundRotation?: Euler;
1642
1641
  environmentIntensity?: number;
1643
- environmentRotation?: Euler$3;
1642
+ environmentRotation?: Euler;
1644
1643
  map?: Texture$1;
1645
1644
  preset?: PresetsType;
1646
1645
  scene?: Scene | React$1.RefObject<Scene>;
@@ -1724,7 +1723,7 @@ declare function EnvironmentCube({ background, scene, blur, backgroundBlurriness
1724
1723
  declare function EnvironmentPortal({ children, near, far, resolution, frames, map, background, blur, backgroundBlurriness, backgroundIntensity, backgroundRotation, environmentIntensity, environmentRotation, scene, files, path, preset, extensions, }: EnvironmentProps): react_jsx_runtime.JSX.Element;
1725
1724
  declare module '@react-three/fiber' {
1726
1725
  interface ThreeElements {
1727
- groundProjectedEnvImpl: ThreeElement$1<typeof GroundedSkybox>;
1726
+ groundProjectedEnvImpl: ThreeElement<typeof GroundedSkybox>;
1728
1727
  }
1729
1728
  }
1730
1729
  /**
@@ -1824,6 +1823,24 @@ declare module '@react-three/fiber' {
1824
1823
  */
1825
1824
  declare function Environment(props: EnvironmentProps): react_jsx_runtime.JSX.Element;
1826
1825
 
1826
+ /**
1827
+ * Moves every trace of interactivity from one object to its replacement, for reconstruction.
1828
+ *
1829
+ * When `args` or a `primitive`'s `object` changes, R3F builds a new three object and keeps the same
1830
+ * instance. Removing the old object from the interaction state and registering the new one from
1831
+ * scratch makes events *work* again (#3778), but it forgets what was in flight: a pointer resting on
1832
+ * the object fires a second `onPointerEnter` without ever having left, and an active pointer capture
1833
+ * is dropped mid-drag. Rewriting the references instead keeps the interaction continuous across a
1834
+ * swap the user never asked to see (#3744).
1835
+ *
1836
+ * Captures are re-keyed rather than released, so the DOM-level capture on `captureData.target` is
1837
+ * left alone — releasing and re-acquiring it is precisely the glitch being avoided.
1838
+ *
1839
+ * Visibility handlers are deliberately not transferred: that registry is keyed by `object.uuid`, so
1840
+ * the replacement re-registers itself through `applyProps`. The old entry is dropped here so it
1841
+ * cannot outlive the object it described.
1842
+ */
1843
+ declare function swapInteractivity(store: RootStore, object: Object3D, newObject: Object3D): void;
1827
1844
  declare function removeInteractivity(store: RootStore, object: Object3D): void;
1828
1845
  declare function createEvents(store: RootStore): {
1829
1846
  handlePointer: (name: string) => (event: DomEvent) => void;
@@ -3249,11 +3266,6 @@ declare function flushSync<R>(fn: () => R): R;
3249
3266
  declare const context: React$1.Context<RootStore>;
3250
3267
  declare const createStore: (invalidate: (state?: RootState, frames?: number, stackFrames?: boolean) => void, advance: (timestamp: number, runGlobalEffects?: boolean, state?: RootState, frame?: XRFrame) => void) => RootStore;
3251
3268
 
3252
- /**
3253
- * Safely flush async effects when testing, simulating a legacy root.
3254
- * @deprecated Import from React instead. import { act } from 'react'
3255
- */
3256
- declare const act: typeof React$1.act;
3257
3269
  /**
3258
3270
  * An SSR-friendly useLayoutEffect.
3259
3271
  *
@@ -4151,5 +4163,5 @@ interface WebGPURootState extends Omit<RootState, 'renderer' | 'gl' | 'internal'
4151
4163
  internal: WebGPUInternalState
4152
4164
  }
4153
4165
 
4154
- export { Block, Canvas, Environment, EnvironmentCube, EnvironmentMap, EnvironmentPortal, ErrorBoundary, FROM_REF, IsObject, ONCE, Portal, R3F_BUILD_LEGACY, R3F_BUILD_WEBGPU, REACT_INTERNAL_PROPS, RESERVED_PROPS, three_d as ReactThreeFiber, Texture, _roots, act, addAfterEffect, addEffect, addTail, advance, applyProps, attach, buildGraph, calculateDpr, clearNodeScope, clearRootNodes, clearRootUniforms, clearScope, context, createEvents, createPointerEvents, createPortal, createRoot, createScopedStore, createStore, createTextureOperations, detach, diffProps, dispose, createPointerEvents as events, extend, findInitialRoot, flushSync, fromRef, getInstanceProps, getPrimary, getPrimaryIds, getRootState, getUuidPrefix, hasConstructor, hasPrimary, invalidate, invalidateInstance, is, isColorRepresentation, isCopyable, isFromRef, isObject3D, isOnce, isOrthographicCamera, isRef, isRenderer, isTexture, isVectorLike, once, prepare, presetsObj, rebuildAllBuffers, rebuildAllNodes, rebuildAllStorage, rebuildAllUniforms, reconciler, registerPrimary, removeInteractivity, removeNodes, removeUniforms, resolve, unmountComponentAtNode, unregisterPrimary, updateCamera, updateFrustum, useBridge, useBuffers, useEnvironment, useFrame, useGPUStorage, useGraph, useInstanceHandle, useIsomorphicLayoutEffect, useLoader, useLocalNodes, useMutableCallback, useNodes, useRenderPipeline, useRenderTarget, useStore, useTexture, useTextures, useThree, useUniform, useUniforms, waitForPrimary };
4166
+ export { Block, Canvas, Environment, EnvironmentCube, EnvironmentMap, EnvironmentPortal, ErrorBoundary, FROM_REF, IsObject, ONCE, Portal, R3F_BUILD_LEGACY, R3F_BUILD_WEBGPU, REACT_INTERNAL_PROPS, RESERVED_PROPS, three_d as ReactThreeFiber, Texture, _roots, addAfterEffect, addEffect, addTail, advance, applyProps, attach, buildGraph, calculateDpr, clearNodeScope, clearRootNodes, clearRootUniforms, clearScope, context, createEvents, createPointerEvents, createPortal, createRoot, createScopedStore, createStore, createTextureOperations, detach, diffProps, dispose, createPointerEvents as events, extend, findInitialRoot, flushSync, fromRef, getInstanceProps, getPrimary, getPrimaryIds, getRootState, getUuidPrefix, hasConstructor, hasPrimary, invalidate, invalidateInstance, is, isColorRepresentation, isCopyable, isFromRef, isObject3D, isOnce, isOrthographicCamera, isRef, isRenderer, isTexture, isVectorLike, once, prepare, presetsObj, rebuildAllBuffers, rebuildAllNodes, rebuildAllStorage, rebuildAllUniforms, reconciler, registerPrimary, removeInteractivity, removeNodes, removeUniforms, resolve, swapInteractivity, unmountComponentAtNode, unregisterPrimary, updateCamera, updateFrustum, useBridge, useBuffers, useEnvironment, useFrame, useGPUStorage, useGraph, useInstanceHandle, useIsomorphicLayoutEffect, useLoader, useLocalNodes, useMutableCallback, useNodes, useRenderPipeline, useRenderTarget, useStore, useTexture, useTextures, useThree, useUniform, useUniforms, waitForPrimary };
4155
4167
  export type { Act, Args, ArgsProp, AttachFnType, AttachType, BackgroundConfig, BackgroundProp, BaseRendererProps, Bridge, BufferCreator, BufferLike, BufferRecord, BufferStore, BuffersWithUtils, Camera, CameraProps, CanvasProps, CanvasSchedulerConfig, Catalogue, ClearBuffersFn, ClearNodesFn, ClearStorageFn, ClearUniformsFn, Color, ColorManagementConfig, ComputeFunction, ConstructorRepresentation, CreatorState, DefaultGLProps, DefaultRendererProps, Disposable, DisposeBuffersFn, DisposeOptions, DisposeStorageFn, DomEvent, Dpr, ElementProps, EnvironmentLoaderProps, EnvironmentProps, EquConfig, Euler, EventHandlers, EventManager, EventProps, Events, Extensions, FiberRoot, FilterFunction, FrameCallback, FrameNextCallback, FrameNextState, FrameState, Frameloop, GLProps, GLTFLike, GeometryProps, GeometryTransformProps, GlobalEffectType, GlobalRenderCallback, HostConfig, InferLoadResult, InjectState, InputLike, Instance, InstanceProps, WebGPUInternalState as InternalState, Intersection, IntersectionEvent, IsAllOptional, IsOptional, Layers, LegacyInternalState, LegacyRenderer, LegacyRootState, LoaderInstance, LoaderLike, LoaderResult, LocalNodeCreator, MappedTextureType, MathProps, MathRepresentation, MathType, MathTypes, Matrix3, Matrix4, Mutable, MutableOrReadonlyParameters, NodeCreator, NodeProps, NodeRecord, NodesWithUtils, NonFunctionKeys, ObjectMap, OffscreenCanvas$1 as OffscreenCanvas, Overwrite, Performance, PointerCaptureTarget, PointerState, PresetsType, PrimaryCanvasEntry, Properties, Quaternion, WebGPUR3FRenderer as R3FRenderer, RaycastableRepresentation, ReactProps, RebuildBuffersFn, RebuildNodesFn, RebuildStorageFn, RebuildUniformsFn, ReconcilerRoot, RemoveBuffersFn, RemoveNodesFn, RemoveStorageFn, RemoveUniformsFn, RenderCallback, RenderProps, RenderTargetOptions, Renderer, RendererConfigExtended, RendererFactory, RendererProps, Root, WebGPURootState as RootState, RootStore, ScopedStoreType, SetBlock, Size, StorageCreator, StorageLike, StorageRecord, StorageStore, StorageWithUtils, Subscription, TSLNode, TSLNodeInput, TextureEntry, TextureInput, TextureNode, TextureOperations, TextureResult, ThreeCamera, ThreeElement, ThreeElements, ThreeElementsImpl, ThreeEvent, ThreeExports, ThreeToJSXElements, UnblockProps, UniformCreator, UniformValue, UniformsWithUtils, UseTextureOptions, UseTexturesReturn, Vector2, Vector3, Vector4, VectorRepresentation, Viewport, VisibilityEntry, WebGLDefaultProps, WebGLProps, WebGLShadowConfig, WebGPUDefaultProps, WebGPUProps, WebGPUShadowConfig, XRManager, XRPointerConfig };
@@ -11,7 +11,6 @@ import { FrameTimingState, FrameCallback as FrameCallback$1, SchedulerApi, UseFr
11
11
  export { AddPhaseOptions, FrameControls, FrameNextControls, FrameTimingState, RootOptions, Scheduler, SchedulerApi, UseFrameNextOptions, UseFrameOptions, getScheduler } from '@pmndrs/scheduler';
12
12
  import { Options } from 'react-use-measure';
13
13
  import * as react_jsx_runtime from 'react/jsx-runtime';
14
- import { ThreeElement as ThreeElement$1, Euler as Euler$3 } from '@react-three/fiber';
15
14
  import { GroundedSkybox } from 'three/examples/jsm/objects/GroundedSkybox.js';
16
15
 
17
16
  function _mergeNamespaces(n, m) {
@@ -1638,9 +1637,9 @@ type EnvironmentProps = {
1638
1637
  blur?: number;
1639
1638
  backgroundBlurriness?: number;
1640
1639
  backgroundIntensity?: number;
1641
- backgroundRotation?: Euler$3;
1640
+ backgroundRotation?: Euler;
1642
1641
  environmentIntensity?: number;
1643
- environmentRotation?: Euler$3;
1642
+ environmentRotation?: Euler;
1644
1643
  map?: Texture$1;
1645
1644
  preset?: PresetsType;
1646
1645
  scene?: Scene | React$1.RefObject<Scene>;
@@ -1724,7 +1723,7 @@ declare function EnvironmentCube({ background, scene, blur, backgroundBlurriness
1724
1723
  declare function EnvironmentPortal({ children, near, far, resolution, frames, map, background, blur, backgroundBlurriness, backgroundIntensity, backgroundRotation, environmentIntensity, environmentRotation, scene, files, path, preset, extensions, }: EnvironmentProps): react_jsx_runtime.JSX.Element;
1725
1724
  declare module '@react-three/fiber' {
1726
1725
  interface ThreeElements {
1727
- groundProjectedEnvImpl: ThreeElement$1<typeof GroundedSkybox>;
1726
+ groundProjectedEnvImpl: ThreeElement<typeof GroundedSkybox>;
1728
1727
  }
1729
1728
  }
1730
1729
  /**
@@ -1824,6 +1823,24 @@ declare module '@react-three/fiber' {
1824
1823
  */
1825
1824
  declare function Environment(props: EnvironmentProps): react_jsx_runtime.JSX.Element;
1826
1825
 
1826
+ /**
1827
+ * Moves every trace of interactivity from one object to its replacement, for reconstruction.
1828
+ *
1829
+ * When `args` or a `primitive`'s `object` changes, R3F builds a new three object and keeps the same
1830
+ * instance. Removing the old object from the interaction state and registering the new one from
1831
+ * scratch makes events *work* again (#3778), but it forgets what was in flight: a pointer resting on
1832
+ * the object fires a second `onPointerEnter` without ever having left, and an active pointer capture
1833
+ * is dropped mid-drag. Rewriting the references instead keeps the interaction continuous across a
1834
+ * swap the user never asked to see (#3744).
1835
+ *
1836
+ * Captures are re-keyed rather than released, so the DOM-level capture on `captureData.target` is
1837
+ * left alone — releasing and re-acquiring it is precisely the glitch being avoided.
1838
+ *
1839
+ * Visibility handlers are deliberately not transferred: that registry is keyed by `object.uuid`, so
1840
+ * the replacement re-registers itself through `applyProps`. The old entry is dropped here so it
1841
+ * cannot outlive the object it described.
1842
+ */
1843
+ declare function swapInteractivity(store: RootStore, object: Object3D, newObject: Object3D): void;
1827
1844
  declare function removeInteractivity(store: RootStore, object: Object3D): void;
1828
1845
  declare function createEvents(store: RootStore): {
1829
1846
  handlePointer: (name: string) => (event: DomEvent) => void;
@@ -3249,11 +3266,6 @@ declare function flushSync<R>(fn: () => R): R;
3249
3266
  declare const context: React$1.Context<RootStore>;
3250
3267
  declare const createStore: (invalidate: (state?: RootState, frames?: number, stackFrames?: boolean) => void, advance: (timestamp: number, runGlobalEffects?: boolean, state?: RootState, frame?: XRFrame) => void) => RootStore;
3251
3268
 
3252
- /**
3253
- * Safely flush async effects when testing, simulating a legacy root.
3254
- * @deprecated Import from React instead. import { act } from 'react'
3255
- */
3256
- declare const act: typeof React$1.act;
3257
3269
  /**
3258
3270
  * An SSR-friendly useLayoutEffect.
3259
3271
  *
@@ -4151,5 +4163,5 @@ interface WebGPURootState extends Omit<RootState, 'renderer' | 'gl' | 'internal'
4151
4163
  internal: WebGPUInternalState
4152
4164
  }
4153
4165
 
4154
- export { Block, Canvas, Environment, EnvironmentCube, EnvironmentMap, EnvironmentPortal, ErrorBoundary, FROM_REF, IsObject, ONCE, Portal, R3F_BUILD_LEGACY, R3F_BUILD_WEBGPU, REACT_INTERNAL_PROPS, RESERVED_PROPS, three_d as ReactThreeFiber, Texture, _roots, act, addAfterEffect, addEffect, addTail, advance, applyProps, attach, buildGraph, calculateDpr, clearNodeScope, clearRootNodes, clearRootUniforms, clearScope, context, createEvents, createPointerEvents, createPortal, createRoot, createScopedStore, createStore, createTextureOperations, detach, diffProps, dispose, createPointerEvents as events, extend, findInitialRoot, flushSync, fromRef, getInstanceProps, getPrimary, getPrimaryIds, getRootState, getUuidPrefix, hasConstructor, hasPrimary, invalidate, invalidateInstance, is, isColorRepresentation, isCopyable, isFromRef, isObject3D, isOnce, isOrthographicCamera, isRef, isRenderer, isTexture, isVectorLike, once, prepare, presetsObj, rebuildAllBuffers, rebuildAllNodes, rebuildAllStorage, rebuildAllUniforms, reconciler, registerPrimary, removeInteractivity, removeNodes, removeUniforms, resolve, unmountComponentAtNode, unregisterPrimary, updateCamera, updateFrustum, useBridge, useBuffers, useEnvironment, useFrame, useGPUStorage, useGraph, useInstanceHandle, useIsomorphicLayoutEffect, useLoader, useLocalNodes, useMutableCallback, useNodes, useRenderPipeline, useRenderTarget, useStore, useTexture, useTextures, useThree, useUniform, useUniforms, waitForPrimary };
4166
+ export { Block, Canvas, Environment, EnvironmentCube, EnvironmentMap, EnvironmentPortal, ErrorBoundary, FROM_REF, IsObject, ONCE, Portal, R3F_BUILD_LEGACY, R3F_BUILD_WEBGPU, REACT_INTERNAL_PROPS, RESERVED_PROPS, three_d as ReactThreeFiber, Texture, _roots, addAfterEffect, addEffect, addTail, advance, applyProps, attach, buildGraph, calculateDpr, clearNodeScope, clearRootNodes, clearRootUniforms, clearScope, context, createEvents, createPointerEvents, createPortal, createRoot, createScopedStore, createStore, createTextureOperations, detach, diffProps, dispose, createPointerEvents as events, extend, findInitialRoot, flushSync, fromRef, getInstanceProps, getPrimary, getPrimaryIds, getRootState, getUuidPrefix, hasConstructor, hasPrimary, invalidate, invalidateInstance, is, isColorRepresentation, isCopyable, isFromRef, isObject3D, isOnce, isOrthographicCamera, isRef, isRenderer, isTexture, isVectorLike, once, prepare, presetsObj, rebuildAllBuffers, rebuildAllNodes, rebuildAllStorage, rebuildAllUniforms, reconciler, registerPrimary, removeInteractivity, removeNodes, removeUniforms, resolve, swapInteractivity, unmountComponentAtNode, unregisterPrimary, updateCamera, updateFrustum, useBridge, useBuffers, useEnvironment, useFrame, useGPUStorage, useGraph, useInstanceHandle, useIsomorphicLayoutEffect, useLoader, useLocalNodes, useMutableCallback, useNodes, useRenderPipeline, useRenderTarget, useStore, useTexture, useTextures, useThree, useUniform, useUniforms, waitForPrimary };
4155
4167
  export type { Act, Args, ArgsProp, AttachFnType, AttachType, BackgroundConfig, BackgroundProp, BaseRendererProps, Bridge, BufferCreator, BufferLike, BufferRecord, BufferStore, BuffersWithUtils, Camera, CameraProps, CanvasProps, CanvasSchedulerConfig, Catalogue, ClearBuffersFn, ClearNodesFn, ClearStorageFn, ClearUniformsFn, Color, ColorManagementConfig, ComputeFunction, ConstructorRepresentation, CreatorState, DefaultGLProps, DefaultRendererProps, Disposable, DisposeBuffersFn, DisposeOptions, DisposeStorageFn, DomEvent, Dpr, ElementProps, EnvironmentLoaderProps, EnvironmentProps, EquConfig, Euler, EventHandlers, EventManager, EventProps, Events, Extensions, FiberRoot, FilterFunction, FrameCallback, FrameNextCallback, FrameNextState, FrameState, Frameloop, GLProps, GLTFLike, GeometryProps, GeometryTransformProps, GlobalEffectType, GlobalRenderCallback, HostConfig, InferLoadResult, InjectState, InputLike, Instance, InstanceProps, WebGPUInternalState as InternalState, Intersection, IntersectionEvent, IsAllOptional, IsOptional, Layers, LegacyInternalState, LegacyRenderer, LegacyRootState, LoaderInstance, LoaderLike, LoaderResult, LocalNodeCreator, MappedTextureType, MathProps, MathRepresentation, MathType, MathTypes, Matrix3, Matrix4, Mutable, MutableOrReadonlyParameters, NodeCreator, NodeProps, NodeRecord, NodesWithUtils, NonFunctionKeys, ObjectMap, OffscreenCanvas$1 as OffscreenCanvas, Overwrite, Performance, PointerCaptureTarget, PointerState, PresetsType, PrimaryCanvasEntry, Properties, Quaternion, WebGPUR3FRenderer as R3FRenderer, RaycastableRepresentation, ReactProps, RebuildBuffersFn, RebuildNodesFn, RebuildStorageFn, RebuildUniformsFn, ReconcilerRoot, RemoveBuffersFn, RemoveNodesFn, RemoveStorageFn, RemoveUniformsFn, RenderCallback, RenderProps, RenderTargetOptions, Renderer, RendererConfigExtended, RendererFactory, RendererProps, Root, WebGPURootState as RootState, RootStore, ScopedStoreType, SetBlock, Size, StorageCreator, StorageLike, StorageRecord, StorageStore, StorageWithUtils, Subscription, TSLNode, TSLNodeInput, TextureEntry, TextureInput, TextureNode, TextureOperations, TextureResult, ThreeCamera, ThreeElement, ThreeElements, ThreeElementsImpl, ThreeEvent, ThreeExports, ThreeToJSXElements, UnblockProps, UniformCreator, UniformValue, UniformsWithUtils, UseTextureOptions, UseTexturesReturn, Vector2, Vector3, Vector4, VectorRepresentation, Viewport, VisibilityEntry, WebGLDefaultProps, WebGLProps, WebGLShadowConfig, WebGPUDefaultProps, WebGPUProps, WebGPUShadowConfig, XRManager, XRPointerConfig };
@@ -11,7 +11,6 @@ import { FrameTimingState, FrameCallback as FrameCallback$1, SchedulerApi, UseFr
11
11
  export { AddPhaseOptions, FrameControls, FrameNextControls, FrameTimingState, RootOptions, Scheduler, SchedulerApi, UseFrameNextOptions, UseFrameOptions, getScheduler } from '@pmndrs/scheduler';
12
12
  import { Options } from 'react-use-measure';
13
13
  import * as react_jsx_runtime from 'react/jsx-runtime';
14
- import { ThreeElement as ThreeElement$1, Euler as Euler$3 } from '@react-three/fiber';
15
14
  import { GroundedSkybox } from 'three/examples/jsm/objects/GroundedSkybox.js';
16
15
 
17
16
  function _mergeNamespaces(n, m) {
@@ -1638,9 +1637,9 @@ type EnvironmentProps = {
1638
1637
  blur?: number;
1639
1638
  backgroundBlurriness?: number;
1640
1639
  backgroundIntensity?: number;
1641
- backgroundRotation?: Euler$3;
1640
+ backgroundRotation?: Euler;
1642
1641
  environmentIntensity?: number;
1643
- environmentRotation?: Euler$3;
1642
+ environmentRotation?: Euler;
1644
1643
  map?: Texture$1;
1645
1644
  preset?: PresetsType;
1646
1645
  scene?: Scene | React$1.RefObject<Scene>;
@@ -1724,7 +1723,7 @@ declare function EnvironmentCube({ background, scene, blur, backgroundBlurriness
1724
1723
  declare function EnvironmentPortal({ children, near, far, resolution, frames, map, background, blur, backgroundBlurriness, backgroundIntensity, backgroundRotation, environmentIntensity, environmentRotation, scene, files, path, preset, extensions, }: EnvironmentProps): react_jsx_runtime.JSX.Element;
1725
1724
  declare module '@react-three/fiber' {
1726
1725
  interface ThreeElements {
1727
- groundProjectedEnvImpl: ThreeElement$1<typeof GroundedSkybox>;
1726
+ groundProjectedEnvImpl: ThreeElement<typeof GroundedSkybox>;
1728
1727
  }
1729
1728
  }
1730
1729
  /**
@@ -1824,6 +1823,24 @@ declare module '@react-three/fiber' {
1824
1823
  */
1825
1824
  declare function Environment(props: EnvironmentProps): react_jsx_runtime.JSX.Element;
1826
1825
 
1826
+ /**
1827
+ * Moves every trace of interactivity from one object to its replacement, for reconstruction.
1828
+ *
1829
+ * When `args` or a `primitive`'s `object` changes, R3F builds a new three object and keeps the same
1830
+ * instance. Removing the old object from the interaction state and registering the new one from
1831
+ * scratch makes events *work* again (#3778), but it forgets what was in flight: a pointer resting on
1832
+ * the object fires a second `onPointerEnter` without ever having left, and an active pointer capture
1833
+ * is dropped mid-drag. Rewriting the references instead keeps the interaction continuous across a
1834
+ * swap the user never asked to see (#3744).
1835
+ *
1836
+ * Captures are re-keyed rather than released, so the DOM-level capture on `captureData.target` is
1837
+ * left alone — releasing and re-acquiring it is precisely the glitch being avoided.
1838
+ *
1839
+ * Visibility handlers are deliberately not transferred: that registry is keyed by `object.uuid`, so
1840
+ * the replacement re-registers itself through `applyProps`. The old entry is dropped here so it
1841
+ * cannot outlive the object it described.
1842
+ */
1843
+ declare function swapInteractivity(store: RootStore, object: Object3D, newObject: Object3D): void;
1827
1844
  declare function removeInteractivity(store: RootStore, object: Object3D): void;
1828
1845
  declare function createEvents(store: RootStore): {
1829
1846
  handlePointer: (name: string) => (event: DomEvent) => void;
@@ -3249,11 +3266,6 @@ declare function flushSync<R>(fn: () => R): R;
3249
3266
  declare const context: React$1.Context<RootStore>;
3250
3267
  declare const createStore: (invalidate: (state?: RootState, frames?: number, stackFrames?: boolean) => void, advance: (timestamp: number, runGlobalEffects?: boolean, state?: RootState, frame?: XRFrame) => void) => RootStore;
3251
3268
 
3252
- /**
3253
- * Safely flush async effects when testing, simulating a legacy root.
3254
- * @deprecated Import from React instead. import { act } from 'react'
3255
- */
3256
- declare const act: typeof React$1.act;
3257
3269
  /**
3258
3270
  * An SSR-friendly useLayoutEffect.
3259
3271
  *
@@ -4151,5 +4163,5 @@ interface WebGPURootState extends Omit<RootState, 'renderer' | 'gl' | 'internal'
4151
4163
  internal: WebGPUInternalState
4152
4164
  }
4153
4165
 
4154
- export { Block, Canvas, Environment, EnvironmentCube, EnvironmentMap, EnvironmentPortal, ErrorBoundary, FROM_REF, IsObject, ONCE, Portal, R3F_BUILD_LEGACY, R3F_BUILD_WEBGPU, REACT_INTERNAL_PROPS, RESERVED_PROPS, three_d as ReactThreeFiber, Texture, _roots, act, addAfterEffect, addEffect, addTail, advance, applyProps, attach, buildGraph, calculateDpr, clearNodeScope, clearRootNodes, clearRootUniforms, clearScope, context, createEvents, createPointerEvents, createPortal, createRoot, createScopedStore, createStore, createTextureOperations, detach, diffProps, dispose, createPointerEvents as events, extend, findInitialRoot, flushSync, fromRef, getInstanceProps, getPrimary, getPrimaryIds, getRootState, getUuidPrefix, hasConstructor, hasPrimary, invalidate, invalidateInstance, is, isColorRepresentation, isCopyable, isFromRef, isObject3D, isOnce, isOrthographicCamera, isRef, isRenderer, isTexture, isVectorLike, once, prepare, presetsObj, rebuildAllBuffers, rebuildAllNodes, rebuildAllStorage, rebuildAllUniforms, reconciler, registerPrimary, removeInteractivity, removeNodes, removeUniforms, resolve, unmountComponentAtNode, unregisterPrimary, updateCamera, updateFrustum, useBridge, useBuffers, useEnvironment, useFrame, useGPUStorage, useGraph, useInstanceHandle, useIsomorphicLayoutEffect, useLoader, useLocalNodes, useMutableCallback, useNodes, useRenderPipeline, useRenderTarget, useStore, useTexture, useTextures, useThree, useUniform, useUniforms, waitForPrimary };
4166
+ export { Block, Canvas, Environment, EnvironmentCube, EnvironmentMap, EnvironmentPortal, ErrorBoundary, FROM_REF, IsObject, ONCE, Portal, R3F_BUILD_LEGACY, R3F_BUILD_WEBGPU, REACT_INTERNAL_PROPS, RESERVED_PROPS, three_d as ReactThreeFiber, Texture, _roots, addAfterEffect, addEffect, addTail, advance, applyProps, attach, buildGraph, calculateDpr, clearNodeScope, clearRootNodes, clearRootUniforms, clearScope, context, createEvents, createPointerEvents, createPortal, createRoot, createScopedStore, createStore, createTextureOperations, detach, diffProps, dispose, createPointerEvents as events, extend, findInitialRoot, flushSync, fromRef, getInstanceProps, getPrimary, getPrimaryIds, getRootState, getUuidPrefix, hasConstructor, hasPrimary, invalidate, invalidateInstance, is, isColorRepresentation, isCopyable, isFromRef, isObject3D, isOnce, isOrthographicCamera, isRef, isRenderer, isTexture, isVectorLike, once, prepare, presetsObj, rebuildAllBuffers, rebuildAllNodes, rebuildAllStorage, rebuildAllUniforms, reconciler, registerPrimary, removeInteractivity, removeNodes, removeUniforms, resolve, swapInteractivity, unmountComponentAtNode, unregisterPrimary, updateCamera, updateFrustum, useBridge, useBuffers, useEnvironment, useFrame, useGPUStorage, useGraph, useInstanceHandle, useIsomorphicLayoutEffect, useLoader, useLocalNodes, useMutableCallback, useNodes, useRenderPipeline, useRenderTarget, useStore, useTexture, useTextures, useThree, useUniform, useUniforms, waitForPrimary };
4155
4167
  export type { Act, Args, ArgsProp, AttachFnType, AttachType, BackgroundConfig, BackgroundProp, BaseRendererProps, Bridge, BufferCreator, BufferLike, BufferRecord, BufferStore, BuffersWithUtils, Camera, CameraProps, CanvasProps, CanvasSchedulerConfig, Catalogue, ClearBuffersFn, ClearNodesFn, ClearStorageFn, ClearUniformsFn, Color, ColorManagementConfig, ComputeFunction, ConstructorRepresentation, CreatorState, DefaultGLProps, DefaultRendererProps, Disposable, DisposeBuffersFn, DisposeOptions, DisposeStorageFn, DomEvent, Dpr, ElementProps, EnvironmentLoaderProps, EnvironmentProps, EquConfig, Euler, EventHandlers, EventManager, EventProps, Events, Extensions, FiberRoot, FilterFunction, FrameCallback, FrameNextCallback, FrameNextState, FrameState, Frameloop, GLProps, GLTFLike, GeometryProps, GeometryTransformProps, GlobalEffectType, GlobalRenderCallback, HostConfig, InferLoadResult, InjectState, InputLike, Instance, InstanceProps, WebGPUInternalState as InternalState, Intersection, IntersectionEvent, IsAllOptional, IsOptional, Layers, LegacyInternalState, LegacyRenderer, LegacyRootState, LoaderInstance, LoaderLike, LoaderResult, LocalNodeCreator, MappedTextureType, MathProps, MathRepresentation, MathType, MathTypes, Matrix3, Matrix4, Mutable, MutableOrReadonlyParameters, NodeCreator, NodeProps, NodeRecord, NodesWithUtils, NonFunctionKeys, ObjectMap, OffscreenCanvas$1 as OffscreenCanvas, Overwrite, Performance, PointerCaptureTarget, PointerState, PresetsType, PrimaryCanvasEntry, Properties, Quaternion, WebGPUR3FRenderer as R3FRenderer, RaycastableRepresentation, ReactProps, RebuildBuffersFn, RebuildNodesFn, RebuildStorageFn, RebuildUniformsFn, ReconcilerRoot, RemoveBuffersFn, RemoveNodesFn, RemoveStorageFn, RemoveUniformsFn, RenderCallback, RenderProps, RenderTargetOptions, Renderer, RendererConfigExtended, RendererFactory, RendererProps, Root, WebGPURootState as RootState, RootStore, ScopedStoreType, SetBlock, Size, StorageCreator, StorageLike, StorageRecord, StorageStore, StorageWithUtils, Subscription, TSLNode, TSLNodeInput, TextureEntry, TextureInput, TextureNode, TextureOperations, TextureResult, ThreeCamera, ThreeElement, ThreeElements, ThreeElementsImpl, ThreeEvent, ThreeExports, ThreeToJSXElements, UnblockProps, UniformCreator, UniformValue, UniformsWithUtils, UseTextureOptions, UseTexturesReturn, Vector2, Vector3, Vector4, VectorRepresentation, Viewport, VisibilityEntry, WebGLDefaultProps, WebGLProps, WebGLShadowConfig, WebGPUDefaultProps, WebGPUProps, WebGPUShadowConfig, XRManager, XRPointerConfig };