@codexo/exojs 0.13.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +133 -6
- package/README.md +80 -63
- package/dist/esm/animation/Tween.js +1 -1
- package/dist/esm/animation/Tween.js.map +1 -1
- package/dist/esm/animation/TweenManager.d.ts +9 -5
- package/dist/esm/animation/TweenManager.d.ts.map +1 -1
- package/dist/esm/animation/TweenManager.js +14 -8
- package/dist/esm/animation/TweenManager.js.map +1 -1
- package/dist/esm/animation/index.d.ts +6 -4
- package/dist/esm/animation/index.d.ts.map +1 -1
- package/dist/esm/audio/AudioBus.d.ts +12 -12
- package/dist/esm/audio/AudioBus.js +29 -29
- package/dist/esm/audio/AudioEffect.d.ts +18 -0
- package/dist/esm/audio/AudioEffect.d.ts.map +1 -0
- package/dist/esm/audio/AudioEffect.js +16 -0
- package/dist/esm/audio/AudioEffect.js.map +1 -0
- package/dist/esm/audio/AudioGenerator.d.ts +91 -0
- package/dist/esm/audio/AudioGenerator.d.ts.map +1 -0
- package/dist/esm/audio/AudioGenerator.js +165 -0
- package/dist/esm/audio/AudioGenerator.js.map +1 -0
- package/dist/esm/audio/AudioGeneratorVoice.d.ts +52 -0
- package/dist/esm/audio/AudioGeneratorVoice.d.ts.map +1 -0
- package/dist/esm/audio/AudioGeneratorVoice.js +141 -0
- package/dist/esm/audio/AudioGeneratorVoice.js.map +1 -0
- package/dist/esm/audio/AudioInput.d.ts +39 -0
- package/dist/esm/audio/AudioInput.d.ts.map +1 -0
- package/dist/esm/audio/AudioInput.js +53 -0
- package/dist/esm/audio/AudioInput.js.map +1 -0
- package/dist/esm/audio/AudioManager.d.ts +72 -34
- package/dist/esm/audio/AudioManager.d.ts.map +1 -1
- package/dist/esm/audio/AudioManager.js +97 -51
- package/dist/esm/audio/AudioManager.js.map +1 -1
- package/dist/esm/audio/AudioStream.d.ts +49 -0
- package/dist/esm/audio/AudioStream.d.ts.map +1 -0
- package/dist/esm/audio/AudioStream.js +109 -0
- package/dist/esm/audio/AudioStream.js.map +1 -0
- package/dist/esm/audio/AudioStreamVoice.d.ts +61 -0
- package/dist/esm/audio/AudioStreamVoice.d.ts.map +1 -0
- package/dist/esm/audio/AudioStreamVoice.js +137 -0
- package/dist/esm/audio/AudioStreamVoice.js.map +1 -0
- package/dist/esm/audio/BaseVoice.d.ts +111 -0
- package/dist/esm/audio/BaseVoice.d.ts.map +1 -0
- package/dist/esm/audio/BaseVoice.js +298 -0
- package/dist/esm/audio/BaseVoice.js.map +1 -0
- package/dist/esm/audio/BiquadEffect.d.ts +53 -0
- package/dist/esm/audio/BiquadEffect.d.ts.map +1 -0
- package/dist/esm/audio/BiquadEffect.js +110 -0
- package/dist/esm/audio/BiquadEffect.js.map +1 -0
- package/dist/esm/audio/InputVoice.d.ts +41 -0
- package/dist/esm/audio/InputVoice.d.ts.map +1 -0
- package/dist/esm/audio/InputVoice.js +85 -0
- package/dist/esm/audio/InputVoice.js.map +1 -0
- package/dist/esm/audio/NoopVoice.d.ts +29 -0
- package/dist/esm/audio/NoopVoice.d.ts.map +1 -0
- package/dist/esm/audio/NoopVoice.js +52 -0
- package/dist/esm/audio/NoopVoice.js.map +1 -0
- package/dist/esm/audio/Playable.d.ts +135 -0
- package/dist/esm/audio/Playable.d.ts.map +1 -0
- package/dist/esm/audio/Sound.d.ts +64 -69
- package/dist/esm/audio/Sound.d.ts.map +1 -1
- package/dist/esm/audio/Sound.js +176 -377
- package/dist/esm/audio/Sound.js.map +1 -1
- package/dist/esm/audio/SoundVoice.d.ts +63 -0
- package/dist/esm/audio/SoundVoice.d.ts.map +1 -0
- package/dist/esm/audio/SoundVoice.js +168 -0
- package/dist/esm/audio/SoundVoice.js.map +1 -0
- package/dist/esm/audio/{filters/WorkletFilter.d.ts → WorkletEffect.d.ts} +3 -3
- package/dist/esm/audio/WorkletEffect.d.ts.map +1 -0
- package/dist/esm/audio/{filters/WorkletFilter.js → WorkletEffect.js} +6 -6
- package/dist/esm/audio/WorkletEffect.js.map +1 -0
- package/dist/esm/audio/audio-context.js +1 -1
- package/dist/esm/audio/audio-context.js.map +1 -1
- package/dist/esm/audio/crossFade.d.ts +22 -13
- package/dist/esm/audio/crossFade.d.ts.map +1 -1
- package/dist/esm/audio/crossFade.js +21 -13
- package/dist/esm/audio/crossFade.js.map +1 -1
- package/dist/esm/audio/filters/HighpassFilter.d.ts +2 -2
- package/dist/esm/audio/filters/HighpassFilter.js +2 -2
- package/dist/esm/audio/filters/LowpassFilter.d.ts +2 -2
- package/dist/esm/audio/filters/LowpassFilter.js +2 -2
- package/dist/esm/audio/filters/index.d.ts +0 -10
- package/dist/esm/audio/filters/index.d.ts.map +1 -1
- package/dist/esm/audio/index.d.ts +13 -15
- package/dist/esm/audio/index.d.ts.map +1 -1
- package/dist/esm/core/Application.d.ts +127 -10
- package/dist/esm/core/Application.d.ts.map +1 -1
- package/dist/esm/core/Application.js +226 -25
- package/dist/esm/core/Application.js.map +1 -1
- package/dist/esm/core/BuildInfo.js +2 -2
- package/dist/esm/core/Color.d.ts +6 -4
- package/dist/esm/core/Color.d.ts.map +1 -1
- package/dist/esm/core/Color.js +19 -15
- package/dist/esm/core/Color.js.map +1 -1
- package/dist/esm/core/DisposalScope.d.ts +50 -0
- package/dist/esm/core/DisposalScope.d.ts.map +1 -0
- package/dist/esm/core/DisposalScope.js +86 -0
- package/dist/esm/core/DisposalScope.js.map +1 -0
- package/dist/esm/core/Perf.d.ts +10 -22
- package/dist/esm/core/Perf.d.ts.map +1 -1
- package/dist/esm/core/Perf.js +15 -8
- package/dist/esm/core/Perf.js.map +1 -1
- package/dist/esm/core/Registry.d.ts +64 -0
- package/dist/esm/core/Registry.d.ts.map +1 -0
- package/dist/esm/core/Registry.js +79 -0
- package/dist/esm/core/Registry.js.map +1 -0
- package/dist/esm/core/Scene.d.ts +69 -21
- package/dist/esm/core/Scene.d.ts.map +1 -1
- package/dist/esm/core/Scene.js +109 -16
- package/dist/esm/core/Scene.js.map +1 -1
- package/dist/esm/core/SceneManager.d.ts +22 -60
- package/dist/esm/core/SceneManager.d.ts.map +1 -1
- package/dist/esm/core/SceneManager.js +68 -153
- package/dist/esm/core/SceneManager.js.map +1 -1
- package/dist/esm/core/SceneNode.d.ts +43 -2
- package/dist/esm/core/SceneNode.d.ts.map +1 -1
- package/dist/esm/core/SceneNode.js +101 -12
- package/dist/esm/core/SceneNode.js.map +1 -1
- package/dist/esm/core/Signal.js.map +1 -1
- package/dist/esm/core/Stage.d.ts +42 -0
- package/dist/esm/core/Stage.d.ts.map +1 -0
- package/dist/esm/core/System.d.ts +22 -0
- package/dist/esm/core/System.d.ts.map +1 -0
- package/dist/esm/core/SystemRegistry.d.ts +35 -0
- package/dist/esm/core/SystemRegistry.d.ts.map +1 -0
- package/dist/esm/core/SystemRegistry.js +104 -0
- package/dist/esm/core/SystemRegistry.js.map +1 -0
- package/dist/esm/core/Time.d.ts +15 -0
- package/dist/esm/core/Time.d.ts.map +1 -1
- package/dist/esm/core/Time.js +25 -0
- package/dist/esm/core/Time.js.map +1 -1
- package/dist/esm/core/dev.d.ts +9 -4
- package/dist/esm/core/dev.d.ts.map +1 -1
- package/dist/esm/core/dev.js +5 -0
- package/dist/esm/core/dev.js.map +1 -1
- package/dist/esm/core/index.d.ts +26 -15
- package/dist/esm/core/index.d.ts.map +1 -1
- package/dist/esm/core/letterbox.d.ts +25 -0
- package/dist/esm/core/letterbox.d.ts.map +1 -0
- package/dist/esm/core/letterbox.js +26 -0
- package/dist/esm/core/letterbox.js.map +1 -0
- package/dist/esm/core/serialization/NodeSerializer.d.ts +71 -0
- package/dist/esm/core/serialization/NodeSerializer.d.ts.map +1 -0
- package/dist/esm/core/serialization/Prefab.d.ts +49 -0
- package/dist/esm/core/serialization/Prefab.d.ts.map +1 -0
- package/dist/esm/core/serialization/Prefab.js +61 -0
- package/dist/esm/core/serialization/Prefab.js.map +1 -0
- package/dist/esm/core/serialization/SerializationRegistry.d.ts +95 -0
- package/dist/esm/core/serialization/SerializationRegistry.d.ts.map +1 -0
- package/dist/esm/core/serialization/SerializationRegistry.js +108 -0
- package/dist/esm/core/serialization/SerializationRegistry.js.map +1 -0
- package/dist/esm/core/serialization/commonFields.d.ts +20 -0
- package/dist/esm/core/serialization/commonFields.d.ts.map +1 -0
- package/dist/esm/core/serialization/commonFields.js +149 -0
- package/dist/esm/core/serialization/commonFields.js.map +1 -0
- package/dist/esm/core/serialization/coreSerializers.d.ts +9 -0
- package/dist/esm/core/serialization/coreSerializers.d.ts.map +1 -0
- package/dist/esm/core/serialization/coreSerializers.js +101 -0
- package/dist/esm/core/serialization/coreSerializers.js.map +1 -0
- package/dist/esm/core/serialization/index.d.ts +6 -0
- package/dist/esm/core/serialization/index.d.ts.map +1 -0
- package/dist/esm/core/serialization/read.d.ts +65 -0
- package/dist/esm/core/serialization/read.d.ts.map +1 -0
- package/dist/esm/core/serialization/read.js +48 -0
- package/dist/esm/core/serialization/read.js.map +1 -0
- package/dist/esm/core/serialization/renderingSerializers.d.ts +7 -0
- package/dist/esm/core/serialization/renderingSerializers.d.ts.map +1 -0
- package/dist/esm/core/serialization/renderingSerializers.js +311 -0
- package/dist/esm/core/serialization/renderingSerializers.js.map +1 -0
- package/dist/esm/core/serialization/serialize.d.ts +56 -0
- package/dist/esm/core/serialization/serialize.d.ts.map +1 -0
- package/dist/esm/core/serialization/serialize.js +144 -0
- package/dist/esm/core/serialization/serialize.js.map +1 -0
- package/dist/esm/core/serialization/serializerHelpers.d.ts +46 -0
- package/dist/esm/core/serialization/serializerHelpers.d.ts.map +1 -0
- package/dist/esm/core/serialization/serializerHelpers.js +161 -0
- package/dist/esm/core/serialization/serializerHelpers.js.map +1 -0
- package/dist/esm/core/serialization/types.d.ts +49 -0
- package/dist/esm/core/serialization/types.d.ts.map +1 -0
- package/dist/esm/core/serialization/types.js +9 -0
- package/dist/esm/core/serialization/types.js.map +1 -0
- package/dist/esm/core/serialization/uiSerializers.d.ts +7 -0
- package/dist/esm/core/serialization/uiSerializers.d.ts.map +1 -0
- package/dist/esm/core/serialization/uiSerializers.js +206 -0
- package/dist/esm/core/serialization/uiSerializers.js.map +1 -0
- package/dist/esm/core/types.d.ts +1 -1
- package/dist/esm/core/types.d.ts.map +1 -1
- package/dist/esm/core/utils.d.ts +1 -16
- package/dist/esm/core/utils.d.ts.map +1 -1
- package/dist/esm/core/utils.js +2 -100
- package/dist/esm/core/utils.js.map +1 -1
- package/dist/esm/debug/PerformanceLayer.js +8 -9
- package/dist/esm/debug/PerformanceLayer.js.map +1 -1
- package/dist/esm/debug/PointerStackLayer.d.ts.map +1 -1
- package/dist/esm/debug/PointerStackLayer.js +9 -6
- package/dist/esm/debug/PointerStackLayer.js.map +1 -1
- package/dist/esm/debug/RenderPassInspectorLayer.d.ts.map +1 -1
- package/dist/esm/debug/RenderPassInspectorLayer.js +19 -12
- package/dist/esm/debug/RenderPassInspectorLayer.js.map +1 -1
- package/dist/esm/extensions/Extension.d.ts +39 -4
- package/dist/esm/extensions/Extension.d.ts.map +1 -1
- package/dist/esm/extensions/materialize.d.ts +9 -1
- package/dist/esm/extensions/materialize.d.ts.map +1 -1
- package/dist/esm/extensions/materialize.js +17 -2
- package/dist/esm/extensions/materialize.js.map +1 -1
- package/dist/esm/extensions/snapshot.d.ts +2 -1
- package/dist/esm/extensions/snapshot.d.ts.map +1 -1
- package/dist/esm/extensions/snapshot.js +8 -0
- package/dist/esm/extensions/snapshot.js.map +1 -1
- package/dist/esm/index.d.ts +2 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +34 -59
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/input/FocusManager.d.ts +59 -0
- package/dist/esm/input/FocusManager.d.ts.map +1 -0
- package/dist/esm/input/FocusManager.js +175 -0
- package/dist/esm/input/FocusManager.js.map +1 -0
- package/dist/esm/input/Gamepad.d.ts.map +1 -1
- package/dist/esm/input/Gamepad.js +8 -4
- package/dist/esm/input/Gamepad.js.map +1 -1
- package/dist/esm/input/GamepadAxis.js +2 -2
- package/dist/esm/input/GamepadDefinitions.d.ts.map +1 -1
- package/dist/esm/input/GamepadDefinitions.js +6 -2
- package/dist/esm/input/GamepadDefinitions.js.map +1 -1
- package/dist/esm/input/GestureRecognizer.d.ts +1 -2
- package/dist/esm/input/GestureRecognizer.d.ts.map +1 -1
- package/dist/esm/input/GestureRecognizer.js +1 -3
- package/dist/esm/input/GestureRecognizer.js.map +1 -1
- package/dist/esm/input/InputBinding.js +3 -3
- package/dist/esm/input/InputBinding.js.map +1 -1
- package/dist/esm/input/InputManager.d.ts +7 -2
- package/dist/esm/input/InputManager.d.ts.map +1 -1
- package/dist/esm/input/InputManager.js +35 -21
- package/dist/esm/input/InputManager.js.map +1 -1
- package/dist/esm/input/InteractionManager.d.ts +67 -2
- package/dist/esm/input/InteractionManager.d.ts.map +1 -1
- package/dist/esm/input/InteractionManager.js +165 -41
- package/dist/esm/input/InteractionManager.js.map +1 -1
- package/dist/esm/input/KeyEvent.d.ts +25 -0
- package/dist/esm/input/KeyEvent.d.ts.map +1 -0
- package/dist/esm/input/KeyEvent.js +32 -0
- package/dist/esm/input/KeyEvent.js.map +1 -0
- package/dist/esm/input/Pointer.d.ts +21 -4
- package/dist/esm/input/Pointer.d.ts.map +1 -1
- package/dist/esm/input/Pointer.js +54 -15
- package/dist/esm/input/Pointer.js.map +1 -1
- package/dist/esm/input/index.d.ts +3 -1
- package/dist/esm/input/index.d.ts.map +1 -1
- package/dist/esm/math/AbstractVector.d.ts.map +1 -1
- package/dist/esm/math/AbstractVector.js +7 -2
- package/dist/esm/math/AbstractVector.js.map +1 -1
- package/dist/esm/math/Circle.d.ts.map +1 -1
- package/dist/esm/math/Circle.js +5 -1
- package/dist/esm/math/Circle.js.map +1 -1
- package/dist/esm/math/Line.d.ts +1 -1
- package/dist/esm/math/Line.d.ts.map +1 -1
- package/dist/esm/math/Line.js +1 -1
- package/dist/esm/math/Line.js.map +1 -1
- package/dist/esm/math/Matrix.d.ts.map +1 -1
- package/dist/esm/math/Matrix.js +6 -1
- package/dist/esm/math/Matrix.js.map +1 -1
- package/dist/esm/math/ObservableVector.d.ts +26 -8
- package/dist/esm/math/ObservableVector.d.ts.map +1 -1
- package/dist/esm/math/ObservableVector.js +24 -16
- package/dist/esm/math/ObservableVector.js.map +1 -1
- package/dist/esm/math/Polygon.d.ts +5 -0
- package/dist/esm/math/Polygon.d.ts.map +1 -1
- package/dist/esm/math/Polygon.js +27 -3
- package/dist/esm/math/Polygon.js.map +1 -1
- package/dist/esm/math/Random.d.ts +9 -9
- package/dist/esm/math/Random.d.ts.map +1 -1
- package/dist/esm/math/Random.js +46 -46
- package/dist/esm/math/Random.js.map +1 -1
- package/dist/esm/math/Rectangle.d.ts +11 -4
- package/dist/esm/math/Rectangle.d.ts.map +1 -1
- package/dist/esm/math/Rectangle.js +12 -6
- package/dist/esm/math/Rectangle.js.map +1 -1
- package/dist/esm/math/Vector.d.ts +1 -1
- package/dist/esm/math/Vector.d.ts.map +1 -1
- package/dist/esm/math/Vector.js +1 -1
- package/dist/esm/math/Vector.js.map +1 -1
- package/dist/esm/math/collision-detection.d.ts +42 -0
- package/dist/esm/math/collision-detection.d.ts.map +1 -1
- package/dist/esm/math/collision-detection.js +54 -4
- package/dist/esm/math/collision-detection.js.map +1 -1
- package/dist/esm/math/collision-primitives.d.ts.map +1 -1
- package/dist/esm/math/collision-primitives.js +4 -0
- package/dist/esm/math/collision-primitives.js.map +1 -1
- package/dist/esm/math/geometry.d.ts +26 -0
- package/dist/esm/math/geometry.d.ts.map +1 -1
- package/dist/esm/math/geometry.js +89 -2
- package/dist/esm/math/geometry.js.map +1 -1
- package/dist/esm/math/index.d.ts +7 -5
- package/dist/esm/math/index.d.ts.map +1 -1
- package/dist/esm/math/swept-collision.d.ts +13 -0
- package/dist/esm/math/swept-collision.d.ts.map +1 -1
- package/dist/esm/math/swept-collision.js +15 -1
- package/dist/esm/math/swept-collision.js.map +1 -1
- package/dist/esm/math/triangulate.d.ts.map +1 -1
- package/dist/esm/math/triangulate.js +9 -1
- package/dist/esm/math/triangulate.js.map +1 -1
- package/dist/esm/math/utils.d.ts +20 -0
- package/dist/esm/math/utils.d.ts.map +1 -1
- package/dist/esm/math/utils.js +18 -15
- package/dist/esm/math/utils.js.map +1 -1
- package/dist/esm/renderer-sdk.d.ts +2 -0
- package/dist/esm/renderer-sdk.d.ts.map +1 -1
- package/dist/esm/{rendering.js → renderer-sdk.js} +1 -1
- package/dist/esm/renderer-sdk.js.map +1 -0
- package/dist/esm/rendering/CallbackRenderPass.js +1 -1
- package/dist/esm/rendering/CallbackRenderPass.js.map +1 -1
- package/dist/esm/rendering/Container.d.ts +3 -0
- package/dist/esm/rendering/Container.d.ts.map +1 -1
- package/dist/esm/rendering/Container.js +28 -5
- package/dist/esm/rendering/Container.js.map +1 -1
- package/dist/esm/rendering/Drawable.d.ts +24 -0
- package/dist/esm/rendering/Drawable.d.ts.map +1 -1
- package/dist/esm/rendering/Drawable.js +54 -0
- package/dist/esm/rendering/Drawable.js.map +1 -1
- package/dist/esm/rendering/GpuResourceAccountant.d.ts +65 -0
- package/dist/esm/rendering/GpuResourceAccountant.d.ts.map +1 -0
- package/dist/esm/rendering/GpuResourceAccountant.js +130 -0
- package/dist/esm/rendering/GpuResourceAccountant.js.map +1 -0
- package/dist/esm/rendering/RenderBackend.d.ts +15 -1
- package/dist/esm/rendering/RenderBackend.d.ts.map +1 -1
- package/dist/esm/rendering/RenderBatch.d.ts +55 -0
- package/dist/esm/rendering/RenderBatch.d.ts.map +1 -0
- package/dist/esm/rendering/RenderBatch.js +107 -0
- package/dist/esm/rendering/RenderBatch.js.map +1 -0
- package/dist/esm/rendering/RenderNode.d.ts +50 -10
- package/dist/esm/rendering/RenderNode.d.ts.map +1 -1
- package/dist/esm/rendering/RenderNode.js +113 -20
- package/dist/esm/rendering/RenderNode.js.map +1 -1
- package/dist/esm/rendering/RenderNodePass.js +2 -2
- package/dist/esm/rendering/RenderNodePass.js.map +1 -1
- package/dist/esm/rendering/RenderStats.d.ts +39 -0
- package/dist/esm/rendering/RenderStats.d.ts.map +1 -1
- package/dist/esm/rendering/RenderStats.js +14 -0
- package/dist/esm/rendering/RenderStats.js.map +1 -1
- package/dist/esm/rendering/RendererRegistry.d.ts.map +1 -1
- package/dist/esm/rendering/RendererRegistry.js +20 -23
- package/dist/esm/rendering/RendererRegistry.js.map +1 -1
- package/dist/esm/rendering/RenderingContext.d.ts +88 -4
- package/dist/esm/rendering/RenderingContext.d.ts.map +1 -1
- package/dist/esm/rendering/RenderingContext.js +107 -5
- package/dist/esm/rendering/RenderingContext.js.map +1 -1
- package/dist/esm/rendering/TransformBuffer.d.ts.map +1 -1
- package/dist/esm/rendering/TransformBuffer.js +2 -0
- package/dist/esm/rendering/TransformBuffer.js.map +1 -1
- package/dist/esm/rendering/View.d.ts +47 -15
- package/dist/esm/rendering/View.d.ts.map +1 -1
- package/dist/esm/rendering/View.js +44 -27
- package/dist/esm/rendering/View.js.map +1 -1
- package/dist/esm/rendering/filters/WebGpuShaderFilter.d.ts.map +1 -1
- package/dist/esm/rendering/filters/WebGpuShaderFilter.js +3 -1
- package/dist/esm/rendering/filters/WebGpuShaderFilter.js.map +1 -1
- package/dist/esm/rendering/geometry/Geometry.d.ts.map +1 -1
- package/dist/esm/rendering/geometry/Geometry.js +4 -2
- package/dist/esm/rendering/geometry/Geometry.js.map +1 -1
- package/dist/esm/rendering/gradient/Gradient.d.ts.map +1 -1
- package/dist/esm/rendering/gradient/Gradient.js +7 -2
- package/dist/esm/rendering/gradient/Gradient.js.map +1 -1
- package/dist/esm/rendering/material/MaterialKey.d.ts.map +1 -1
- package/dist/esm/rendering/material/MaterialKey.js +2 -0
- package/dist/esm/rendering/material/MaterialKey.js.map +1 -1
- package/dist/esm/rendering/material/ShaderSource.js +6 -0
- package/dist/esm/rendering/material/ShaderSource.js.map +1 -1
- package/dist/esm/rendering/mesh/ImmediateMesh.d.ts +48 -0
- package/dist/esm/rendering/mesh/ImmediateMesh.d.ts.map +1 -0
- package/dist/esm/rendering/mesh/ImmediateMesh.js +85 -0
- package/dist/esm/rendering/mesh/ImmediateMesh.js.map +1 -0
- package/dist/esm/rendering/mesh/Mesh.d.ts +29 -6
- package/dist/esm/rendering/mesh/Mesh.d.ts.map +1 -1
- package/dist/esm/rendering/mesh/Mesh.js +40 -13
- package/dist/esm/rendering/mesh/Mesh.js.map +1 -1
- package/dist/esm/rendering/pixelSnap.d.ts.map +1 -1
- package/dist/esm/rendering/pixelSnap.js +1 -0
- package/dist/esm/rendering/pixelSnap.js.map +1 -1
- package/dist/esm/rendering/plan/RenderCommand.d.ts +31 -9
- package/dist/esm/rendering/plan/RenderCommand.d.ts.map +1 -1
- package/dist/esm/rendering/plan/RenderCommand.js +23 -21
- package/dist/esm/rendering/plan/RenderCommand.js.map +1 -1
- package/dist/esm/rendering/plan/RenderEffectExecutor.d.ts.map +1 -1
- package/dist/esm/rendering/plan/RenderEffectExecutor.js +1 -0
- package/dist/esm/rendering/plan/RenderEffectExecutor.js.map +1 -1
- package/dist/esm/rendering/plan/RenderInstruction.d.ts +7 -37
- package/dist/esm/rendering/plan/RenderInstruction.d.ts.map +1 -1
- package/dist/esm/rendering/plan/RenderPlanBuilder.d.ts +17 -2
- package/dist/esm/rendering/plan/RenderPlanBuilder.d.ts.map +1 -1
- package/dist/esm/rendering/plan/RenderPlanBuilder.js +132 -46
- package/dist/esm/rendering/plan/RenderPlanBuilder.js.map +1 -1
- package/dist/esm/rendering/plan/RenderPlanOptimizer.d.ts.map +1 -1
- package/dist/esm/rendering/plan/RenderPlanOptimizer.js +31 -4
- package/dist/esm/rendering/plan/RenderPlanOptimizer.js.map +1 -1
- package/dist/esm/rendering/plan/RenderPlanPlayer.d.ts.map +1 -1
- package/dist/esm/rendering/plan/RenderPlanPlayer.js +54 -17
- package/dist/esm/rendering/plan/RenderPlanPlayer.js.map +1 -1
- package/dist/esm/rendering/plan/RenderScope.d.ts +16 -10
- package/dist/esm/rendering/plan/RenderScope.d.ts.map +1 -1
- package/dist/esm/rendering/primitives/Graphics.d.ts +6 -0
- package/dist/esm/rendering/primitives/Graphics.d.ts.map +1 -1
- package/dist/esm/rendering/primitives/Graphics.js +17 -1
- package/dist/esm/rendering/primitives/Graphics.js.map +1 -1
- package/dist/esm/rendering/{index.d.ts → public.d.ts} +5 -35
- package/dist/esm/rendering/public.d.ts.map +1 -0
- package/dist/esm/rendering/shader/ShaderAttribute.d.ts.map +1 -1
- package/dist/esm/rendering/shader/ShaderAttribute.js +2 -0
- package/dist/esm/rendering/shader/ShaderAttribute.js.map +1 -1
- package/dist/esm/rendering/sprite/AnimatedSprite.d.ts +11 -0
- package/dist/esm/rendering/sprite/AnimatedSprite.d.ts.map +1 -1
- package/dist/esm/rendering/sprite/AnimatedSprite.js +24 -2
- package/dist/esm/rendering/sprite/AnimatedSprite.js.map +1 -1
- package/dist/esm/rendering/sprite/NineSliceSprite.d.ts.map +1 -1
- package/dist/esm/rendering/sprite/NineSliceSprite.js +10 -11
- package/dist/esm/rendering/sprite/NineSliceSprite.js.map +1 -1
- package/dist/esm/rendering/sprite/RepeatingSprite.d.ts.map +1 -1
- package/dist/esm/rendering/sprite/RepeatingSprite.js +1 -3
- package/dist/esm/rendering/sprite/RepeatingSprite.js.map +1 -1
- package/dist/esm/rendering/sprite/Sprite.d.ts.map +1 -1
- package/dist/esm/rendering/sprite/Sprite.js +30 -3
- package/dist/esm/rendering/sprite/Sprite.js.map +1 -1
- package/dist/esm/rendering/sprite/nineSlice.d.ts.map +1 -1
- package/dist/esm/rendering/sprite/nineSlice.js +12 -18
- package/dist/esm/rendering/sprite/nineSlice.js.map +1 -1
- package/dist/esm/rendering/sprite/repeatingSpritePlan.d.ts.map +1 -1
- package/dist/esm/rendering/sprite/repeatingSpritePlan.js +2 -2
- package/dist/esm/rendering/sprite/repeatingSpritePlan.js.map +1 -1
- package/dist/esm/rendering/text/BitmapText.d.ts +2 -0
- package/dist/esm/rendering/text/BitmapText.d.ts.map +1 -1
- package/dist/esm/rendering/text/BitmapText.js +4 -0
- package/dist/esm/rendering/text/BitmapText.js.map +1 -1
- package/dist/esm/rendering/text/GlyphAtlas.d.ts.map +1 -1
- package/dist/esm/rendering/text/GlyphAtlas.js +2 -1
- package/dist/esm/rendering/text/GlyphAtlas.js.map +1 -1
- package/dist/esm/rendering/text/GlyphAtlasPool.d.ts +8 -1
- package/dist/esm/rendering/text/GlyphAtlasPool.d.ts.map +1 -1
- package/dist/esm/rendering/text/GlyphAtlasPool.js +9 -12
- package/dist/esm/rendering/text/GlyphAtlasPool.js.map +1 -1
- package/dist/esm/rendering/text/GlyphSdf.d.ts.map +1 -1
- package/dist/esm/rendering/text/GlyphSdf.js +5 -1
- package/dist/esm/rendering/text/GlyphSdf.js.map +1 -1
- package/dist/esm/rendering/text/HTMLText.d.ts.map +1 -1
- package/dist/esm/rendering/text/HTMLText.js +1 -0
- package/dist/esm/rendering/text/HTMLText.js.map +1 -1
- package/dist/esm/rendering/text/Text.d.ts +17 -6
- package/dist/esm/rendering/text/Text.d.ts.map +1 -1
- package/dist/esm/rendering/text/Text.js +7 -12
- package/dist/esm/rendering/text/Text.js.map +1 -1
- package/dist/esm/rendering/text/TextLayout.d.ts.map +1 -1
- package/dist/esm/rendering/text/TextLayout.js +4 -18
- package/dist/esm/rendering/text/TextLayout.js.map +1 -1
- package/dist/esm/rendering/texture/DataTexture.js +2 -2
- package/dist/esm/rendering/texture/DataTexture.js.map +1 -1
- package/dist/esm/rendering/texture/Texture.d.ts +6 -0
- package/dist/esm/rendering/texture/Texture.d.ts.map +1 -1
- package/dist/esm/rendering/texture/Texture.js +8 -0
- package/dist/esm/rendering/texture/Texture.js.map +1 -1
- package/dist/esm/rendering/texture/TextureRegion.d.ts.map +1 -1
- package/dist/esm/rendering/texture/TextureRegion.js.map +1 -1
- package/dist/esm/rendering/texture/repeat.d.ts.map +1 -1
- package/dist/esm/rendering/texture/repeat.js +2 -2
- package/dist/esm/rendering/texture/repeat.js.map +1 -1
- package/dist/esm/rendering/types.d.ts +11 -0
- package/dist/esm/rendering/types.d.ts.map +1 -1
- package/dist/esm/rendering/types.js +11 -0
- package/dist/esm/rendering/types.js.map +1 -1
- package/dist/esm/rendering/video/Video.d.ts +7 -3
- package/dist/esm/rendering/video/Video.d.ts.map +1 -1
- package/dist/esm/rendering/video/Video.js +7 -3
- package/dist/esm/rendering/video/Video.js.map +1 -1
- package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.js +2 -2
- package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2Backend.d.ts +21 -2
- package/dist/esm/rendering/webgl2/WebGl2Backend.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2Backend.js +106 -6
- package/dist/esm/rendering/webgl2/WebGl2Backend.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.js +2 -2
- package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.d.ts +17 -0
- package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js +122 -38
- package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2NineSliceSpriteRenderer.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2NineSliceSpriteRenderer.js +2 -1
- package/dist/esm/rendering/webgl2/WebGl2NineSliceSpriteRenderer.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.d.ts +16 -1
- package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.js +32 -1
- package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2RepeatingSpriteRenderer.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2RepeatingSpriteRenderer.js +15 -11
- package/dist/esm/rendering/webgl2/WebGl2RepeatingSpriteRenderer.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2ShaderBlock.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2ShaderBlock.js +14 -3
- package/dist/esm/rendering/webgl2/WebGl2ShaderBlock.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2ShaderMappings.js +3 -3
- package/dist/esm/rendering/webgl2/WebGl2ShaderMappings.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2ShaderProgram.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2ShaderProgram.js +11 -2
- package/dist/esm/rendering/webgl2/WebGl2ShaderProgram.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js +7 -2
- package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2StencilClipper.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2StencilClipper.js +3 -2
- package/dist/esm/rendering/webgl2/WebGl2StencilClipper.js.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2TextRenderer.d.ts.map +1 -1
- package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js +10 -4
- package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuBackend.d.ts +18 -2
- package/dist/esm/rendering/webgpu/WebGpuBackend.d.ts.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuBackend.js +91 -10
- package/dist/esm/rendering/webgpu/WebGpuBackend.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuBlendState.d.ts.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuBlendState.js +3 -0
- package/dist/esm/rendering/webgpu/WebGpuBlendState.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.d.ts +13 -0
- package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.d.ts.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js +102 -24
- package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuNineSliceSpriteRenderer.d.ts.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuNineSliceSpriteRenderer.js +6 -1
- package/dist/esm/rendering/webgpu/WebGpuNineSliceSpriteRenderer.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuRepeatingSpriteRenderer.d.ts.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuRepeatingSpriteRenderer.js +19 -9
- package/dist/esm/rendering/webgpu/WebGpuRepeatingSpriteRenderer.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.d.ts.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js +8 -4
- package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuStencilClipper.d.ts.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuStencilClipper.js +1 -0
- package/dist/esm/rendering/webgpu/WebGpuStencilClipper.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuTextRenderer.d.ts.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js +19 -7
- package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuTransformStorage.d.ts +13 -2
- package/dist/esm/rendering/webgpu/WebGpuTransformStorage.d.ts.map +1 -1
- package/dist/esm/rendering/webgpu/WebGpuTransformStorage.js +22 -2
- package/dist/esm/rendering/webgpu/WebGpuTransformStorage.js.map +1 -1
- package/dist/esm/rendering/webgpu/compute/WebGpuComputePipeline.js +1 -1
- package/dist/esm/rendering/webgpu/compute/WebGpuComputePipeline.js.map +1 -1
- package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.d.ts +7 -0
- package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.d.ts.map +1 -1
- package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.js +8 -0
- package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.js.map +1 -1
- package/dist/esm/resources/Asset.d.ts +1 -1
- package/dist/esm/resources/Asset.d.ts.map +1 -1
- package/dist/esm/resources/Asset.js +0 -2
- package/dist/esm/resources/Asset.js.map +1 -1
- package/dist/esm/resources/AssetContainer.d.ts +75 -0
- package/dist/esm/resources/AssetContainer.d.ts.map +1 -0
- package/dist/esm/resources/AssetContainer.js +100 -0
- package/dist/esm/resources/AssetContainer.js.map +1 -0
- package/dist/esm/resources/AssetDefinitions.d.ts +3 -3
- package/dist/esm/resources/AssetDefinitions.d.ts.map +1 -1
- package/dist/esm/resources/Assets.d.ts.map +1 -1
- package/dist/esm/resources/Assets.js +0 -1
- package/dist/esm/resources/Assets.js.map +1 -1
- package/dist/esm/resources/FactoryRegistry.d.ts.map +1 -1
- package/dist/esm/resources/FactoryRegistry.js +14 -23
- package/dist/esm/resources/FactoryRegistry.js.map +1 -1
- package/dist/esm/resources/IndexedDbDatabase.d.ts.map +1 -1
- package/dist/esm/resources/IndexedDbDatabase.js +8 -1
- package/dist/esm/resources/IndexedDbDatabase.js.map +1 -1
- package/dist/esm/resources/IndexedDbKeyValueStore.d.ts +37 -0
- package/dist/esm/resources/IndexedDbKeyValueStore.d.ts.map +1 -0
- package/dist/esm/resources/IndexedDbKeyValueStore.js +58 -0
- package/dist/esm/resources/IndexedDbKeyValueStore.js.map +1 -0
- package/dist/esm/resources/KeyValueStore.d.ts +31 -0
- package/dist/esm/resources/KeyValueStore.d.ts.map +1 -0
- package/dist/esm/resources/Loader.d.ts +42 -2
- package/dist/esm/resources/Loader.d.ts.map +1 -1
- package/dist/esm/resources/Loader.js +92 -7
- package/dist/esm/resources/Loader.js.map +1 -1
- package/dist/esm/resources/MemoryStore.d.ts +17 -0
- package/dist/esm/resources/MemoryStore.d.ts.map +1 -0
- package/dist/esm/resources/MemoryStore.js +30 -0
- package/dist/esm/resources/MemoryStore.js.map +1 -0
- package/dist/esm/resources/WebStorageStore.d.ts +40 -0
- package/dist/esm/resources/WebStorageStore.d.ts.map +1 -0
- package/dist/esm/resources/WebStorageStore.js +84 -0
- package/dist/esm/resources/WebStorageStore.js.map +1 -0
- package/dist/esm/resources/coreAssetBindings.d.ts.map +1 -1
- package/dist/esm/resources/coreAssetBindings.js +16 -5
- package/dist/esm/resources/coreAssetBindings.js.map +1 -1
- package/dist/esm/resources/factories/BmFontFactory.js +4 -4
- package/dist/esm/resources/factories/BmFontFactory.js.map +1 -1
- package/dist/esm/resources/factories/MusicFactory.d.ts +9 -9
- package/dist/esm/resources/factories/MusicFactory.d.ts.map +1 -1
- package/dist/esm/resources/factories/MusicFactory.js +7 -7
- package/dist/esm/resources/factories/MusicFactory.js.map +1 -1
- package/dist/esm/resources/factories/SoundFactory.js +2 -2
- package/dist/esm/resources/factories/SoundFactory.js.map +1 -1
- package/dist/esm/resources/factories/SubtitleFactory.d.ts +11 -1
- package/dist/esm/resources/factories/SubtitleFactory.d.ts.map +1 -1
- package/dist/esm/resources/factories/SubtitleFactory.js +13 -9
- package/dist/esm/resources/factories/SubtitleFactory.js.map +1 -1
- package/dist/esm/resources/index.d.ts +51 -34
- package/dist/esm/resources/index.d.ts.map +1 -1
- package/dist/esm/resources/utils.js +4 -4
- package/dist/esm/resources/utils.js.map +1 -1
- package/dist/esm/ui/Button.d.ts +54 -0
- package/dist/esm/ui/Button.d.ts.map +1 -0
- package/dist/esm/ui/Button.js +139 -0
- package/dist/esm/ui/Button.js.map +1 -0
- package/dist/esm/ui/Label.d.ts +17 -0
- package/dist/esm/ui/Label.d.ts.map +1 -0
- package/dist/esm/ui/Label.js +37 -0
- package/dist/esm/ui/Label.js.map +1 -0
- package/dist/esm/ui/Panel.d.ts +38 -0
- package/dist/esm/ui/Panel.d.ts.map +1 -0
- package/dist/esm/ui/Panel.js +61 -0
- package/dist/esm/ui/Panel.js.map +1 -0
- package/dist/esm/ui/ProgressBar.d.ts +37 -0
- package/dist/esm/ui/ProgressBar.d.ts.map +1 -0
- package/dist/esm/ui/ProgressBar.js +76 -0
- package/dist/esm/ui/ProgressBar.js.map +1 -0
- package/dist/esm/ui/Stack.d.ts +34 -0
- package/dist/esm/ui/Stack.d.ts.map +1 -0
- package/dist/esm/ui/Stack.js +69 -0
- package/dist/esm/ui/Stack.js.map +1 -0
- package/dist/esm/ui/UIRoot.d.ts +31 -0
- package/dist/esm/ui/UIRoot.d.ts.map +1 -0
- package/dist/esm/ui/UIRoot.js +49 -0
- package/dist/esm/ui/UIRoot.js.map +1 -0
- package/dist/esm/ui/Widget.d.ts +45 -0
- package/dist/esm/ui/Widget.d.ts.map +1 -0
- package/dist/esm/ui/Widget.js +113 -0
- package/dist/esm/ui/Widget.js.map +1 -0
- package/dist/esm/ui/index.d.ts +13 -0
- package/dist/esm/ui/index.d.ts.map +1 -0
- package/dist/exo.debug.esm.js +1 -948
- package/dist/exo.debug.esm.js.map +1 -1
- package/dist/exo.esm.js +1 -40945
- package/dist/exo.esm.js.map +1 -1
- package/package.json +24 -13
- package/dist/esm/audio/AbstractMedia.d.ts +0 -75
- package/dist/esm/audio/AbstractMedia.d.ts.map +0 -1
- package/dist/esm/audio/AbstractMedia.js +0 -179
- package/dist/esm/audio/AbstractMedia.js.map +0 -1
- package/dist/esm/audio/AudioAnalyser.d.ts +0 -128
- package/dist/esm/audio/AudioAnalyser.d.ts.map +0 -1
- package/dist/esm/audio/AudioAnalyser.js +0 -473
- package/dist/esm/audio/AudioAnalyser.js.map +0 -1
- package/dist/esm/audio/AudioFilter.d.ts +0 -17
- package/dist/esm/audio/AudioFilter.d.ts.map +0 -1
- package/dist/esm/audio/AudioFilter.js +0 -15
- package/dist/esm/audio/AudioFilter.js.map +0 -1
- package/dist/esm/audio/BeatDetector.d.ts +0 -207
- package/dist/esm/audio/BeatDetector.d.ts.map +0 -1
- package/dist/esm/audio/BeatDetector.js +0 -424
- package/dist/esm/audio/BeatDetector.js.map +0 -1
- package/dist/esm/audio/Media.d.ts +0 -37
- package/dist/esm/audio/Media.d.ts.map +0 -1
- package/dist/esm/audio/Music.d.ts +0 -42
- package/dist/esm/audio/Music.d.ts.map +0 -1
- package/dist/esm/audio/Music.js +0 -164
- package/dist/esm/audio/Music.js.map +0 -1
- package/dist/esm/audio/OscillatorSound.d.ts +0 -100
- package/dist/esm/audio/OscillatorSound.d.ts.map +0 -1
- package/dist/esm/audio/OscillatorSound.js +0 -346
- package/dist/esm/audio/OscillatorSound.js.map +0 -1
- package/dist/esm/audio/dsp/fft.d.ts +0 -23
- package/dist/esm/audio/dsp/fft.d.ts.map +0 -1
- package/dist/esm/audio/dsp/mel.d.ts +0 -44
- package/dist/esm/audio/dsp/mel.d.ts.map +0 -1
- package/dist/esm/audio/dsp/mel.js +0 -70
- package/dist/esm/audio/dsp/mel.js.map +0 -1
- package/dist/esm/audio/dsp/tempogram.d.ts +0 -52
- package/dist/esm/audio/dsp/tempogram.d.ts.map +0 -1
- package/dist/esm/audio/filters/ChorusFilter.d.ts +0 -54
- package/dist/esm/audio/filters/ChorusFilter.d.ts.map +0 -1
- package/dist/esm/audio/filters/ChorusFilter.js +0 -155
- package/dist/esm/audio/filters/ChorusFilter.js.map +0 -1
- package/dist/esm/audio/filters/CompressorFilter.d.ts +0 -54
- package/dist/esm/audio/filters/CompressorFilter.d.ts.map +0 -1
- package/dist/esm/audio/filters/CompressorFilter.js +0 -123
- package/dist/esm/audio/filters/CompressorFilter.js.map +0 -1
- package/dist/esm/audio/filters/DelayFilter.d.ts +0 -36
- package/dist/esm/audio/filters/DelayFilter.d.ts.map +0 -1
- package/dist/esm/audio/filters/DelayFilter.js +0 -114
- package/dist/esm/audio/filters/DelayFilter.js.map +0 -1
- package/dist/esm/audio/filters/DuckingFilter.d.ts +0 -45
- package/dist/esm/audio/filters/DuckingFilter.d.ts.map +0 -1
- package/dist/esm/audio/filters/DuckingFilter.js +0 -172
- package/dist/esm/audio/filters/DuckingFilter.js.map +0 -1
- package/dist/esm/audio/filters/EqualizerFilter.d.ts +0 -51
- package/dist/esm/audio/filters/EqualizerFilter.d.ts.map +0 -1
- package/dist/esm/audio/filters/EqualizerFilter.js +0 -138
- package/dist/esm/audio/filters/EqualizerFilter.js.map +0 -1
- package/dist/esm/audio/filters/GranularFilter.d.ts +0 -63
- package/dist/esm/audio/filters/GranularFilter.d.ts.map +0 -1
- package/dist/esm/audio/filters/GranularFilter.js +0 -107
- package/dist/esm/audio/filters/GranularFilter.js.map +0 -1
- package/dist/esm/audio/filters/PitchShiftFilter.d.ts +0 -45
- package/dist/esm/audio/filters/PitchShiftFilter.d.ts.map +0 -1
- package/dist/esm/audio/filters/PitchShiftFilter.js +0 -66
- package/dist/esm/audio/filters/PitchShiftFilter.js.map +0 -1
- package/dist/esm/audio/filters/ReverbFilter.d.ts +0 -38
- package/dist/esm/audio/filters/ReverbFilter.d.ts.map +0 -1
- package/dist/esm/audio/filters/ReverbFilter.js +0 -122
- package/dist/esm/audio/filters/ReverbFilter.js.map +0 -1
- package/dist/esm/audio/filters/VocoderFilter.d.ts +0 -50
- package/dist/esm/audio/filters/VocoderFilter.d.ts.map +0 -1
- package/dist/esm/audio/filters/VocoderFilter.js +0 -94
- package/dist/esm/audio/filters/VocoderFilter.js.map +0 -1
- package/dist/esm/audio/filters/WorkletFilter.d.ts.map +0 -1
- package/dist/esm/audio/filters/WorkletFilter.js.map +0 -1
- package/dist/esm/audio/worklets/beat-detector.worklet.d.ts +0 -2
- package/dist/esm/audio/worklets/beat-detector.worklet.d.ts.map +0 -1
- package/dist/esm/audio/worklets/beat-detector.worklet.js +0 -647
- package/dist/esm/audio/worklets/beat-detector.worklet.js.map +0 -1
- package/dist/esm/audio/worklets/granular.worklet.d.ts +0 -2
- package/dist/esm/audio/worklets/granular.worklet.d.ts.map +0 -1
- package/dist/esm/audio/worklets/granular.worklet.js +0 -89
- package/dist/esm/audio/worklets/granular.worklet.js.map +0 -1
- package/dist/esm/audio/worklets/pitch-shift.worklet.d.ts +0 -2
- package/dist/esm/audio/worklets/pitch-shift.worklet.d.ts.map +0 -1
- package/dist/esm/audio/worklets/pitch-shift.worklet.js +0 -74
- package/dist/esm/audio/worklets/pitch-shift.worklet.js.map +0 -1
- package/dist/esm/audio/worklets/vocoder.worklet.d.ts +0 -2
- package/dist/esm/audio/worklets/vocoder.worklet.d.ts.map +0 -1
- package/dist/esm/audio/worklets/vocoder.worklet.js +0 -92
- package/dist/esm/audio/worklets/vocoder.worklet.js.map +0 -1
- package/dist/esm/input/internal/interactionManagerRegistry.d.ts +0 -10
- package/dist/esm/input/internal/interactionManagerRegistry.d.ts.map +0 -1
- package/dist/esm/input/internal/interactionManagerRegistry.js +0 -10
- package/dist/esm/input/internal/interactionManagerRegistry.js.map +0 -1
- package/dist/esm/rendering/index.d.ts.map +0 -1
- package/dist/esm/rendering/plan/RenderInstruction.js +0 -45
- package/dist/esm/rendering/plan/RenderInstruction.js.map +0 -1
- package/dist/esm/rendering.d.ts +0 -29
- package/dist/esm/rendering.d.ts.map +0 -1
- package/dist/esm/rendering.js.map +0 -1
- package/dist/esm/resources/JsonStore.d.ts +0 -19
- package/dist/esm/resources/JsonStore.d.ts.map +0 -1
- package/dist/esm/resources/JsonStore.js +0 -62
- package/dist/esm/resources/JsonStore.js.map +0 -1
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import type { Application } from '#core/Application';
|
|
2
|
+
import type { InteractionHooks } from '#core/Stage';
|
|
3
|
+
import type { System } from '#core/System';
|
|
4
|
+
import type { Time } from '#core/Time';
|
|
2
5
|
import { Quadtree } from '#math/Quadtree';
|
|
6
|
+
import { Container } from '#rendering/Container';
|
|
3
7
|
import type { RenderNode } from '#rendering/RenderNode';
|
|
4
8
|
/**
|
|
5
9
|
* Routes pointer events from the {@link InputManager} to interactive
|
|
@@ -18,7 +22,9 @@ import type { RenderNode } from '#rendering/RenderNode';
|
|
|
18
22
|
* Constructed automatically by {@link Application}; you do not instantiate
|
|
19
23
|
* this class yourself.
|
|
20
24
|
*/
|
|
21
|
-
export declare class InteractionManager {
|
|
25
|
+
export declare class InteractionManager implements InteractionHooks, System {
|
|
26
|
+
/** App-systems tick band — interaction after input. @internal */
|
|
27
|
+
readonly order = 200;
|
|
22
28
|
private readonly _app;
|
|
23
29
|
private _quadtree;
|
|
24
30
|
private _interactiveNodes;
|
|
@@ -26,6 +32,17 @@ export declare class InteractionManager {
|
|
|
26
32
|
private _quadtreeItems;
|
|
27
33
|
private _quadtreeOrderCounter;
|
|
28
34
|
private readonly _quadtreeQueryBuffer;
|
|
35
|
+
/** This manager's service bundle, installed on a scene root via {@link attachRoot}. */
|
|
36
|
+
private readonly _stage;
|
|
37
|
+
/**
|
|
38
|
+
* UI-layer interaction hooks: no-ops, so screen-fixed UI nodes are kept OUT
|
|
39
|
+
* of the world quadtree. The UI layer is hit-tested by a direct subtree walk
|
|
40
|
+
* in screen space (see {@link _resolveHit}); per-node signal dispatch still
|
|
41
|
+
* works because it reads the lazy node signals, not the quadtree.
|
|
42
|
+
*/
|
|
43
|
+
private readonly _uiInteraction;
|
|
44
|
+
/** Service bundle installed on a scene's UI layer; shares focus with the world stage. */
|
|
45
|
+
private readonly _uiStage;
|
|
29
46
|
/** Maps pointerId → the deepest interactive RenderNode that pointer is currently over. */
|
|
30
47
|
private readonly _lastHit;
|
|
31
48
|
/** Pending per-pointer event queues, filled by signal handlers each frame. */
|
|
@@ -34,6 +51,11 @@ export declare class InteractionManager {
|
|
|
34
51
|
private readonly _capturedPointers;
|
|
35
52
|
/** Active drag states. Maps pointerId → drag metadata. */
|
|
36
53
|
private readonly _drags;
|
|
54
|
+
/**
|
|
55
|
+
* Modal input-capture stack. While non-empty, hit-testing is confined to the
|
|
56
|
+
* topmost root's subtree, so a modal dialog shields the nodes beneath it.
|
|
57
|
+
*/
|
|
58
|
+
private readonly _captureStack;
|
|
37
59
|
/** Whether any pointer enqueued events since the last update(). */
|
|
38
60
|
private _dirty;
|
|
39
61
|
private readonly _onPointerDownHandler;
|
|
@@ -65,6 +87,16 @@ export declare class InteractionManager {
|
|
|
65
87
|
* routing; exposed read-only for diagnostic / debug consumers.
|
|
66
88
|
*/
|
|
67
89
|
getCapturedNodes(): readonly RenderNode[];
|
|
90
|
+
/**
|
|
91
|
+
* Confine pointer hit-testing to `root`'s subtree until a matching
|
|
92
|
+
* {@link popInputCapture}. Pointer events outside the subtree hit nothing, so
|
|
93
|
+
* a modal dialog (optionally with a full-screen backdrop to swallow clicks)
|
|
94
|
+
* shields the interactive nodes beneath it. Captures stack — the most
|
|
95
|
+
* recently pushed root wins.
|
|
96
|
+
*/
|
|
97
|
+
pushInputCapture(root: RenderNode): void;
|
|
98
|
+
/** Release the most recently pushed input capture (see {@link pushInputCapture}). */
|
|
99
|
+
popInputCapture(): void;
|
|
68
100
|
/**
|
|
69
101
|
* Returns the internal quadtree used for spatial hit-testing, or null when
|
|
70
102
|
* no interactive nodes are present. Used by {@link HitTestLayer} to render
|
|
@@ -89,7 +121,30 @@ export declare class InteractionManager {
|
|
|
89
121
|
* activity; every signal handler that enqueues an event sets `_dirty =
|
|
90
122
|
* true`, and `update()` clears it at the top before draining the queue.
|
|
91
123
|
*/
|
|
92
|
-
update(): void;
|
|
124
|
+
update(_delta: Time): void;
|
|
125
|
+
/**
|
|
126
|
+
* Bind a scene's root container to this manager: install the manager's
|
|
127
|
+
* {@link Stage} on the subtree (so its nodes route their hooks here) and
|
|
128
|
+
* register the subtree's interactive nodes. Called by {@link SceneManager}
|
|
129
|
+
* when a scene becomes active.
|
|
130
|
+
* @internal
|
|
131
|
+
*/
|
|
132
|
+
attachRoot(root: Container): void;
|
|
133
|
+
/**
|
|
134
|
+
* Unbind a scene's root: unregister its interactive nodes and clear the stage
|
|
135
|
+
* from the subtree. Called by {@link SceneManager} when a scene is removed.
|
|
136
|
+
* @internal
|
|
137
|
+
*/
|
|
138
|
+
detachRoot(root: Container): void;
|
|
139
|
+
/**
|
|
140
|
+
* Bind a scene's UI layer to this manager. Installs the UI stage (no-op world
|
|
141
|
+
* hooks, shared focus) so its nodes route focus here but stay out of the world
|
|
142
|
+
* quadtree; the layer is hit-tested by a direct walk in screen space.
|
|
143
|
+
* @internal
|
|
144
|
+
*/
|
|
145
|
+
attachUIRoot(root: Container): void;
|
|
146
|
+
/** Unbind a scene's UI layer. @internal */
|
|
147
|
+
detachUIRoot(root: Container): void;
|
|
93
148
|
/**
|
|
94
149
|
* Called when a subtree rooted at `node` has been added to the scene.
|
|
95
150
|
* Walks the subtree and registers any interactive nodes found.
|
|
@@ -127,6 +182,16 @@ export declare class InteractionManager {
|
|
|
127
182
|
private _enqueue;
|
|
128
183
|
private _processQueue;
|
|
129
184
|
private _endDrag;
|
|
185
|
+
/**
|
|
186
|
+
* Resolve the hit node and its coordinate space for a fresh pointer. An
|
|
187
|
+
* active modal capture confines hit-testing to its subtree; otherwise the
|
|
188
|
+
* screen-fixed UI layer is tried first (screen space), then the camera world.
|
|
189
|
+
*/
|
|
190
|
+
private _resolveHit;
|
|
191
|
+
/** Map a design-space pointer into either the screen-fixed UI view or the camera world. */
|
|
192
|
+
private _pointerCoords;
|
|
193
|
+
/** Whether `node` lives inside the active scene's UI layer. */
|
|
194
|
+
private _isUINode;
|
|
130
195
|
private _hitTest;
|
|
131
196
|
private _hitTestIndexed;
|
|
132
197
|
private _hitTestNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractionManager.d.ts","sourceRoot":"","sources":["../../../src/input/InteractionManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"InteractionManager.d.ts","sourceRoot":"","sources":["../../../src/input/InteractionManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { setActiveInteractionManager } from './internal/interactionManagerRegistry.js';
|
|
2
1
|
import { Quadtree } from '../math/Quadtree.js';
|
|
3
2
|
import { Rectangle } from '../math/Rectangle.js';
|
|
4
3
|
import { Container } from '../rendering/Container.js';
|
|
@@ -36,6 +35,8 @@ var PointerEventFlag;
|
|
|
36
35
|
* this class yourself.
|
|
37
36
|
*/
|
|
38
37
|
class InteractionManager {
|
|
38
|
+
/** App-systems tick band — interaction after input. @internal */
|
|
39
|
+
order = 200;
|
|
39
40
|
_app;
|
|
40
41
|
// Persistent quadtree — null when no interactive nodes are present.
|
|
41
42
|
_quadtree = null;
|
|
@@ -48,6 +49,22 @@ class InteractionManager {
|
|
|
48
49
|
// Running insertion-order counter used to break hit-test ties.
|
|
49
50
|
_quadtreeOrderCounter = 0;
|
|
50
51
|
_quadtreeQueryBuffer = [];
|
|
52
|
+
/** This manager's service bundle, installed on a scene root via {@link attachRoot}. */
|
|
53
|
+
_stage;
|
|
54
|
+
/**
|
|
55
|
+
* UI-layer interaction hooks: no-ops, so screen-fixed UI nodes are kept OUT
|
|
56
|
+
* of the world quadtree. The UI layer is hit-tested by a direct subtree walk
|
|
57
|
+
* in screen space (see {@link _resolveHit}); per-node signal dispatch still
|
|
58
|
+
* works because it reads the lazy node signals, not the quadtree.
|
|
59
|
+
*/
|
|
60
|
+
_uiInteraction = {
|
|
61
|
+
_notifyNodeAdded: () => { },
|
|
62
|
+
_notifyNodeRemoved: () => { },
|
|
63
|
+
_notifyInteractiveChanged: () => { },
|
|
64
|
+
_notifyBoundsInvalidated: () => { },
|
|
65
|
+
};
|
|
66
|
+
/** Service bundle installed on a scene's UI layer; shares focus with the world stage. */
|
|
67
|
+
_uiStage;
|
|
51
68
|
/** Maps pointerId → the deepest interactive RenderNode that pointer is currently over. */
|
|
52
69
|
_lastHit = new Map();
|
|
53
70
|
/** Pending per-pointer event queues, filled by signal handlers each frame. */
|
|
@@ -56,6 +73,11 @@ class InteractionManager {
|
|
|
56
73
|
_capturedPointers = new Map();
|
|
57
74
|
/** Active drag states. Maps pointerId → drag metadata. */
|
|
58
75
|
_drags = new Map();
|
|
76
|
+
/**
|
|
77
|
+
* Modal input-capture stack. While non-empty, hit-testing is confined to the
|
|
78
|
+
* topmost root's subtree, so a modal dialog shields the nodes beneath it.
|
|
79
|
+
*/
|
|
80
|
+
_captureStack = [];
|
|
59
81
|
/** Whether any pointer enqueued events since the last update(). */
|
|
60
82
|
_dirty = false;
|
|
61
83
|
_onPointerDownHandler;
|
|
@@ -66,9 +88,8 @@ class InteractionManager {
|
|
|
66
88
|
_onPointerLeaveHandler;
|
|
67
89
|
constructor(app) {
|
|
68
90
|
this._app = app;
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
setActiveInteractionManager(this);
|
|
91
|
+
this._stage = { interaction: this, focus: app.focus };
|
|
92
|
+
this._uiStage = { interaction: this._uiInteraction, focus: app.focus };
|
|
72
93
|
this._onPointerDownHandler = this._handlePointerDown.bind(this);
|
|
73
94
|
this._onPointerMoveHandler = this._handlePointerMove.bind(this);
|
|
74
95
|
this._onPointerUpHandler = this._handlePointerUp.bind(this);
|
|
@@ -112,6 +133,20 @@ class InteractionManager {
|
|
|
112
133
|
getCapturedNodes() {
|
|
113
134
|
return [...this._capturedPointers.values()];
|
|
114
135
|
}
|
|
136
|
+
/**
|
|
137
|
+
* Confine pointer hit-testing to `root`'s subtree until a matching
|
|
138
|
+
* {@link popInputCapture}. Pointer events outside the subtree hit nothing, so
|
|
139
|
+
* a modal dialog (optionally with a full-screen backdrop to swallow clicks)
|
|
140
|
+
* shields the interactive nodes beneath it. Captures stack — the most
|
|
141
|
+
* recently pushed root wins.
|
|
142
|
+
*/
|
|
143
|
+
pushInputCapture(root) {
|
|
144
|
+
this._captureStack.push(root);
|
|
145
|
+
}
|
|
146
|
+
/** Release the most recently pushed input capture (see {@link pushInputCapture}). */
|
|
147
|
+
popInputCapture() {
|
|
148
|
+
this._captureStack.pop();
|
|
149
|
+
}
|
|
115
150
|
/**
|
|
116
151
|
* Returns the internal quadtree used for spatial hit-testing, or null when
|
|
117
152
|
* no interactive nodes are present. Used by {@link HitTestLayer} to render
|
|
@@ -134,6 +169,7 @@ class InteractionManager {
|
|
|
134
169
|
this._pending.clear();
|
|
135
170
|
this._capturedPointers.clear();
|
|
136
171
|
this._drags.clear();
|
|
172
|
+
this._captureStack.length = 0;
|
|
137
173
|
this._interactiveNodes.clear();
|
|
138
174
|
this._staleNodes.clear();
|
|
139
175
|
this._quadtreeItems.clear();
|
|
@@ -142,7 +178,6 @@ class InteractionManager {
|
|
|
142
178
|
this._quadtree.destroy();
|
|
143
179
|
this._quadtree = null;
|
|
144
180
|
}
|
|
145
|
-
setActiveInteractionManager(null);
|
|
146
181
|
}
|
|
147
182
|
/**
|
|
148
183
|
* Process all pending pointer events accumulated since the last frame.
|
|
@@ -155,7 +190,7 @@ class InteractionManager {
|
|
|
155
190
|
* activity; every signal handler that enqueues an event sets `_dirty =
|
|
156
191
|
* true`, and `update()` clears it at the top before draining the queue.
|
|
157
192
|
*/
|
|
158
|
-
update() {
|
|
193
|
+
update(_delta) {
|
|
159
194
|
if (!this._dirty)
|
|
160
195
|
return;
|
|
161
196
|
this._dirty = false;
|
|
@@ -166,6 +201,43 @@ class InteractionManager {
|
|
|
166
201
|
this._pending.clear();
|
|
167
202
|
this._updateCursor();
|
|
168
203
|
}
|
|
204
|
+
/**
|
|
205
|
+
* Bind a scene's root container to this manager: install the manager's
|
|
206
|
+
* {@link Stage} on the subtree (so its nodes route their hooks here) and
|
|
207
|
+
* register the subtree's interactive nodes. Called by {@link SceneManager}
|
|
208
|
+
* when a scene becomes active.
|
|
209
|
+
* @internal
|
|
210
|
+
*/
|
|
211
|
+
attachRoot(root) {
|
|
212
|
+
root._setStage(this._stage);
|
|
213
|
+
this._notifyNodeAdded(root);
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Unbind a scene's root: unregister its interactive nodes and clear the stage
|
|
217
|
+
* from the subtree. Called by {@link SceneManager} when a scene is removed.
|
|
218
|
+
* @internal
|
|
219
|
+
*/
|
|
220
|
+
detachRoot(root) {
|
|
221
|
+
this._app.focus.blur();
|
|
222
|
+
this._captureStack.length = 0;
|
|
223
|
+
this._notifyNodeRemoved(root);
|
|
224
|
+
root._setStage(null);
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Bind a scene's UI layer to this manager. Installs the UI stage (no-op world
|
|
228
|
+
* hooks, shared focus) so its nodes route focus here but stay out of the world
|
|
229
|
+
* quadtree; the layer is hit-tested by a direct walk in screen space.
|
|
230
|
+
* @internal
|
|
231
|
+
*/
|
|
232
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention -- UI is an acronym (cf. HTMLText)
|
|
233
|
+
attachUIRoot(root) {
|
|
234
|
+
root._setStage(this._uiStage);
|
|
235
|
+
}
|
|
236
|
+
/** Unbind a scene's UI layer. @internal */
|
|
237
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention -- UI is an acronym (cf. HTMLText)
|
|
238
|
+
detachUIRoot(root) {
|
|
239
|
+
root._setStage(null);
|
|
240
|
+
}
|
|
169
241
|
// ---------------------------------------------------------------------------
|
|
170
242
|
// Hooks called by RenderNode / Container / SceneNode
|
|
171
243
|
// These are prefixed _ to signal "internal-but-public".
|
|
@@ -260,10 +332,29 @@ class InteractionManager {
|
|
|
260
332
|
// ---------------------------------------------------------------------------
|
|
261
333
|
_processQueue(queue) {
|
|
262
334
|
const { pointer, events } = queue;
|
|
263
|
-
const { id
|
|
264
|
-
//
|
|
335
|
+
const { id } = pointer;
|
|
336
|
+
// Resolve the hit node and the coordinate space it lives in. A captured
|
|
337
|
+
// pointer short-circuits hit-testing; otherwise the screen-fixed UI layer
|
|
338
|
+
// is tried before the camera-space world (see _resolveHit). Coordinates
|
|
339
|
+
// follow the hit's layer (UI = screen space, world = camera space) so
|
|
340
|
+
// dragging and event positions agree with node positions — correct under
|
|
341
|
+
// pixelRatio > 1, letterboxing, and a panned / zoomed / rotated camera.
|
|
265
342
|
const captured = this._capturedPointers.get(id) ?? null;
|
|
266
|
-
|
|
343
|
+
let hit;
|
|
344
|
+
let x;
|
|
345
|
+
let y;
|
|
346
|
+
if (captured !== null) {
|
|
347
|
+
const coords = this._pointerCoords(pointer, this._isUINode(captured));
|
|
348
|
+
hit = captured;
|
|
349
|
+
x = coords.x;
|
|
350
|
+
y = coords.y;
|
|
351
|
+
}
|
|
352
|
+
else {
|
|
353
|
+
const resolved = this._resolveHit(pointer);
|
|
354
|
+
hit = resolved.node;
|
|
355
|
+
x = resolved.x;
|
|
356
|
+
y = resolved.y;
|
|
357
|
+
}
|
|
267
358
|
// --- Over / Out transitions ---
|
|
268
359
|
// Skip while a drag is active for this pointer — the dragged node
|
|
269
360
|
// stays "hovered" by definition and we don't want spurious events.
|
|
@@ -295,7 +386,7 @@ class InteractionManager {
|
|
|
295
386
|
catch {
|
|
296
387
|
// Best-effort — jsdom and some browsers may not support this.
|
|
297
388
|
}
|
|
298
|
-
this._dispatchDirect(new InteractionEvent('dragstart', hit, pointer, x, y), hit.
|
|
389
|
+
this._dispatchDirect(new InteractionEvent('dragstart', hit, pointer, x, y), hit._peekInteractionSignal('dragstart'));
|
|
299
390
|
}
|
|
300
391
|
}
|
|
301
392
|
}
|
|
@@ -310,7 +401,7 @@ class InteractionManager {
|
|
|
310
401
|
this._dispatchBubble(new InteractionEvent('pointermove', hit, pointer, x, y));
|
|
311
402
|
}
|
|
312
403
|
if (drag !== null) {
|
|
313
|
-
this._dispatchDirect(new InteractionEvent('drag', drag.node, pointer, x, y), drag.node.
|
|
404
|
+
this._dispatchDirect(new InteractionEvent('drag', drag.node, pointer, x, y), drag.node._peekInteractionSignal('drag'));
|
|
314
405
|
}
|
|
315
406
|
}
|
|
316
407
|
// --- Up ---
|
|
@@ -319,7 +410,7 @@ class InteractionManager {
|
|
|
319
410
|
this._dispatchBubble(new InteractionEvent('pointerup', hit, pointer, x, y));
|
|
320
411
|
}
|
|
321
412
|
if (drag !== null) {
|
|
322
|
-
this._dispatchDirect(new InteractionEvent('dragend', drag.node, pointer, x, y), drag.node.
|
|
413
|
+
this._dispatchDirect(new InteractionEvent('dragend', drag.node, pointer, x, y), drag.node._peekInteractionSignal('dragend'));
|
|
323
414
|
this._endDrag(id);
|
|
324
415
|
}
|
|
325
416
|
}
|
|
@@ -332,7 +423,7 @@ class InteractionManager {
|
|
|
332
423
|
// --- Cancel / Leave ---
|
|
333
424
|
if (isExitEvent) {
|
|
334
425
|
if (drag !== null) {
|
|
335
|
-
this._dispatchDirect(new InteractionEvent('dragend', drag.node, pointer, x, y), drag.node.
|
|
426
|
+
this._dispatchDirect(new InteractionEvent('dragend', drag.node, pointer, x, y), drag.node._peekInteractionSignal('dragend'));
|
|
336
427
|
this._endDrag(id);
|
|
337
428
|
}
|
|
338
429
|
else if (last !== null) {
|
|
@@ -354,6 +445,49 @@ class InteractionManager {
|
|
|
354
445
|
// ---------------------------------------------------------------------------
|
|
355
446
|
// Hit-testing
|
|
356
447
|
// ---------------------------------------------------------------------------
|
|
448
|
+
/**
|
|
449
|
+
* Resolve the hit node and its coordinate space for a fresh pointer. An
|
|
450
|
+
* active modal capture confines hit-testing to its subtree; otherwise the
|
|
451
|
+
* screen-fixed UI layer is tried first (screen space), then the camera world.
|
|
452
|
+
*/
|
|
453
|
+
_resolveHit(pointer) {
|
|
454
|
+
const capture = this._captureStack.at(-1);
|
|
455
|
+
if (capture !== undefined) {
|
|
456
|
+
const coords = this._pointerCoords(pointer, this._isUINode(capture));
|
|
457
|
+
return { node: this._hitTestNode(capture, coords.x, coords.y), x: coords.x, y: coords.y };
|
|
458
|
+
}
|
|
459
|
+
const uiRoot = this._app.scene.currentScene?._peekUI() ?? null;
|
|
460
|
+
if (uiRoot !== null) {
|
|
461
|
+
const ui = this._app.rendering.screenView.screenToWorld(pointer.x, pointer.y);
|
|
462
|
+
const uiHit = this._hitTestNode(uiRoot, ui.x, ui.y);
|
|
463
|
+
if (uiHit !== null) {
|
|
464
|
+
return { node: uiHit, x: ui.x, y: ui.y };
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
const world = this._app.rendering.camera.screenToWorld(pointer.x, pointer.y);
|
|
468
|
+
return { node: this._hitTest(world.x, world.y), x: world.x, y: world.y };
|
|
469
|
+
}
|
|
470
|
+
/** Map a design-space pointer into either the screen-fixed UI view or the camera world. */
|
|
471
|
+
_pointerCoords(pointer, ui) {
|
|
472
|
+
const view = ui ? this._app.rendering.screenView : this._app.rendering.camera;
|
|
473
|
+
return view.screenToWorld(pointer.x, pointer.y);
|
|
474
|
+
}
|
|
475
|
+
/** Whether `node` lives inside the active scene's UI layer. */
|
|
476
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention -- UI is an acronym (cf. HTMLText)
|
|
477
|
+
_isUINode(node) {
|
|
478
|
+
const uiRoot = this._app.scene.currentScene?._peekUI() ?? null;
|
|
479
|
+
if (uiRoot === null) {
|
|
480
|
+
return false;
|
|
481
|
+
}
|
|
482
|
+
let current = node;
|
|
483
|
+
while (current !== null) {
|
|
484
|
+
if (current === uiRoot) {
|
|
485
|
+
return true;
|
|
486
|
+
}
|
|
487
|
+
current = current.parent;
|
|
488
|
+
}
|
|
489
|
+
return false;
|
|
490
|
+
}
|
|
357
491
|
_hitTest(x, y) {
|
|
358
492
|
if (this._quadtree !== null) {
|
|
359
493
|
return this._hitTestIndexed(x, y);
|
|
@@ -389,7 +523,11 @@ class InteractionManager {
|
|
|
389
523
|
if (node instanceof Container) {
|
|
390
524
|
const children = node.children;
|
|
391
525
|
for (let i = children.length - 1; i >= 0; i--) {
|
|
392
|
-
const
|
|
526
|
+
const child = children[i];
|
|
527
|
+
if (child === undefined) {
|
|
528
|
+
continue;
|
|
529
|
+
}
|
|
530
|
+
const hit = this._hitTestNode(child, x, y);
|
|
393
531
|
if (hit) {
|
|
394
532
|
return hit;
|
|
395
533
|
}
|
|
@@ -483,10 +621,10 @@ class InteractionManager {
|
|
|
483
621
|
}
|
|
484
622
|
/** Build a fresh Quadtree sized to encompass the canvas + current scene root. */
|
|
485
623
|
_createQuadtree() {
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
const width =
|
|
489
|
-
const height =
|
|
624
|
+
// Seed in design/world units (matching node bounds and the camera-converted
|
|
625
|
+
// pointer coordinates); unioned below with the scene root's world bounds.
|
|
626
|
+
const width = this._app.width || 800;
|
|
627
|
+
const height = this._app.height || 600;
|
|
490
628
|
const bounds = new Rectangle(0, 0, width, height);
|
|
491
629
|
const root = this._app.scene.currentScene?.root;
|
|
492
630
|
if (root) {
|
|
@@ -511,7 +649,10 @@ class InteractionManager {
|
|
|
511
649
|
if (node instanceof Container) {
|
|
512
650
|
// Push in reverse so iteration preserves child insertion order.
|
|
513
651
|
for (let index = node.children.length - 1; index >= 0; index--) {
|
|
514
|
-
|
|
652
|
+
const child = node.children[index];
|
|
653
|
+
if (child !== undefined) {
|
|
654
|
+
stack.push(child);
|
|
655
|
+
}
|
|
515
656
|
}
|
|
516
657
|
}
|
|
517
658
|
}
|
|
@@ -524,7 +665,7 @@ class InteractionManager {
|
|
|
524
665
|
while (current !== null && !event.propagationStopped) {
|
|
525
666
|
event.currentTarget = current;
|
|
526
667
|
const signal = this._signalFor(event.type, current);
|
|
527
|
-
signal
|
|
668
|
+
signal?.dispatch(event);
|
|
528
669
|
if (event.propagationStopped) {
|
|
529
670
|
break;
|
|
530
671
|
}
|
|
@@ -536,29 +677,12 @@ class InteractionManager {
|
|
|
536
677
|
/** Dispatch an event directly on a single node without bubbling. */
|
|
537
678
|
_dispatchDirect(event, signal) {
|
|
538
679
|
event.currentTarget = event.target;
|
|
539
|
-
signal
|
|
680
|
+
signal?.dispatch(event);
|
|
540
681
|
}
|
|
541
682
|
_signalFor(type, node) {
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
case 'pointerup':
|
|
546
|
-
return node.onPointerUp;
|
|
547
|
-
case 'pointermove':
|
|
548
|
-
return node.onPointerMove;
|
|
549
|
-
case 'pointerover':
|
|
550
|
-
return node.onPointerOver;
|
|
551
|
-
case 'pointerout':
|
|
552
|
-
return node.onPointerOut;
|
|
553
|
-
case 'pointertap':
|
|
554
|
-
return node.onPointerTap;
|
|
555
|
-
case 'dragstart':
|
|
556
|
-
return node.onDragStart;
|
|
557
|
-
case 'drag':
|
|
558
|
-
return node.onDrag;
|
|
559
|
-
case 'dragend':
|
|
560
|
-
return node.onDragEnd;
|
|
561
|
-
}
|
|
683
|
+
// Peek (never materialize): a node with no listener for `type` has no
|
|
684
|
+
// signal, so dispatch simply skips it.
|
|
685
|
+
return node._peekInteractionSignal(type);
|
|
562
686
|
}
|
|
563
687
|
// ---------------------------------------------------------------------------
|
|
564
688
|
// Cursor
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InteractionManager.js","sources":["../../../../src/input/InteractionManager.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InteractionManager.js","sources":["../../../../src/input/InteractionManager.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { RenderNode } from '#rendering/RenderNode';
|
|
2
|
+
/** Keyboard phase delivered to a focused node. */
|
|
3
|
+
export type KeyEventType = 'keydown' | 'keyup';
|
|
4
|
+
/**
|
|
5
|
+
* Envelope dispatched by {@link FocusManager} to the focused {@link RenderNode}
|
|
6
|
+
* for keyboard input. `channel` is the input channel of the key — compare it
|
|
7
|
+
* with the `Keyboard` constants (e.g. `event.channel === Keyboard.Enter`).
|
|
8
|
+
*
|
|
9
|
+
* A handler may call {@link KeyEvent.preventDefault} to suppress the
|
|
10
|
+
* FocusManager's built-in handling for this key (currently `Tab` focus
|
|
11
|
+
* traversal), letting the focused widget consume the key itself.
|
|
12
|
+
*/
|
|
13
|
+
export declare class KeyEvent {
|
|
14
|
+
readonly type: KeyEventType;
|
|
15
|
+
/** Input channel of the key — compare with the `Keyboard.*` channel constants. */
|
|
16
|
+
readonly channel: number;
|
|
17
|
+
/** The focused node this event was delivered to. */
|
|
18
|
+
readonly target: RenderNode;
|
|
19
|
+
private _defaultPrevented;
|
|
20
|
+
constructor(type: KeyEventType, channel: number, target: RenderNode);
|
|
21
|
+
get defaultPrevented(): boolean;
|
|
22
|
+
/** Suppress the FocusManager's built-in handling (e.g. Tab traversal) for this key. */
|
|
23
|
+
preventDefault(): void;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=KeyEvent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KeyEvent.d.ts","sourceRoot":"","sources":["../../../src/input/KeyEvent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,kDAAkD;AAClD,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC;AAE/C;;;;;;;;GAQG;AACH,qBAAa,QAAQ;IACnB,SAAgB,IAAI,EAAE,YAAY,CAAC;IACnC,kFAAkF;IAClF,SAAgB,OAAO,EAAE,MAAM,CAAC;IAChC,oDAAoD;IACpD,SAAgB,MAAM,EAAE,UAAU,CAAC;IACnC,OAAO,CAAC,iBAAiB,CAAS;gBAEf,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;IAM1E,IAAW,gBAAgB,IAAI,OAAO,CAErC;IAED,uFAAuF;IAChF,cAAc,IAAI,IAAI;CAG9B"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Envelope dispatched by {@link FocusManager} to the focused {@link RenderNode}
|
|
3
|
+
* for keyboard input. `channel` is the input channel of the key — compare it
|
|
4
|
+
* with the `Keyboard` constants (e.g. `event.channel === Keyboard.Enter`).
|
|
5
|
+
*
|
|
6
|
+
* A handler may call {@link KeyEvent.preventDefault} to suppress the
|
|
7
|
+
* FocusManager's built-in handling for this key (currently `Tab` focus
|
|
8
|
+
* traversal), letting the focused widget consume the key itself.
|
|
9
|
+
*/
|
|
10
|
+
class KeyEvent {
|
|
11
|
+
type;
|
|
12
|
+
/** Input channel of the key — compare with the `Keyboard.*` channel constants. */
|
|
13
|
+
channel;
|
|
14
|
+
/** The focused node this event was delivered to. */
|
|
15
|
+
target;
|
|
16
|
+
_defaultPrevented = false;
|
|
17
|
+
constructor(type, channel, target) {
|
|
18
|
+
this.type = type;
|
|
19
|
+
this.channel = channel;
|
|
20
|
+
this.target = target;
|
|
21
|
+
}
|
|
22
|
+
get defaultPrevented() {
|
|
23
|
+
return this._defaultPrevented;
|
|
24
|
+
}
|
|
25
|
+
/** Suppress the FocusManager's built-in handling (e.g. Tab traversal) for this key. */
|
|
26
|
+
preventDefault() {
|
|
27
|
+
this._defaultPrevented = true;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export { KeyEvent };
|
|
32
|
+
//# sourceMappingURL=KeyEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KeyEvent.js","sources":["../../../../src/input/KeyEvent.ts"],"sourcesContent":[null],"names":[],"mappings":"AAKA;;;;;;;;AAQG;MACU,QAAQ,CAAA;AACH,IAAA,IAAI;;AAEJ,IAAA,OAAO;;AAEP,IAAA,MAAM;IACd,iBAAiB,GAAG,KAAK;AAEjC,IAAA,WAAA,CAAmB,IAAkB,EAAE,OAAe,EAAE,MAAkB,EAAA;AACxE,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;AAChB,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;IACtB;AAEA,IAAA,IAAW,gBAAgB,GAAA;QACzB,OAAO,IAAI,CAAC,iBAAiB;IAC/B;;IAGO,cAAc,GAAA;AACnB,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;IAC/B;AACD;;;;"}
|