@codexo/exojs 0.7.11 → 0.7.12

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.
Files changed (478) hide show
  1. package/CHANGELOG.md +108 -0
  2. package/dist/esm/animation/Tween.d.ts +60 -1
  3. package/dist/esm/animation/Tween.js +60 -1
  4. package/dist/esm/animation/Tween.js.map +1 -1
  5. package/dist/esm/animation/TweenManager.d.ts +10 -0
  6. package/dist/esm/animation/TweenManager.js +10 -0
  7. package/dist/esm/animation/TweenManager.js.map +1 -1
  8. package/dist/esm/animation/types.d.ts +15 -0
  9. package/dist/esm/animation/types.js +6 -0
  10. package/dist/esm/animation/types.js.map +1 -1
  11. package/dist/esm/audio/AbstractMedia.d.ts +11 -0
  12. package/dist/esm/audio/AbstractMedia.js +10 -0
  13. package/dist/esm/audio/AbstractMedia.js.map +1 -1
  14. package/dist/esm/audio/AudioAnalyser.d.ts +21 -0
  15. package/dist/esm/audio/AudioAnalyser.js +16 -0
  16. package/dist/esm/audio/AudioAnalyser.js.map +1 -1
  17. package/dist/esm/audio/AudioBus.d.ts +37 -0
  18. package/dist/esm/audio/AudioBus.js +36 -0
  19. package/dist/esm/audio/AudioBus.js.map +1 -1
  20. package/dist/esm/audio/AudioFilter.d.ts +7 -0
  21. package/dist/esm/audio/AudioFilter.js +6 -0
  22. package/dist/esm/audio/AudioFilter.js.map +1 -1
  23. package/dist/esm/audio/AudioListener.d.ts +19 -0
  24. package/dist/esm/audio/AudioListener.js +11 -0
  25. package/dist/esm/audio/AudioListener.js.map +1 -1
  26. package/dist/esm/audio/AudioManager.d.ts +37 -0
  27. package/dist/esm/audio/AudioManager.js +37 -0
  28. package/dist/esm/audio/AudioManager.js.map +1 -1
  29. package/dist/esm/audio/BeatDetector.d.ts +21 -0
  30. package/dist/esm/audio/BeatDetector.js +21 -0
  31. package/dist/esm/audio/BeatDetector.js.map +1 -1
  32. package/dist/esm/audio/Media.d.ts +11 -0
  33. package/dist/esm/audio/Music.d.ts +12 -0
  34. package/dist/esm/audio/Music.js +12 -0
  35. package/dist/esm/audio/Music.js.map +1 -1
  36. package/dist/esm/audio/Sound.d.ts +25 -0
  37. package/dist/esm/audio/Sound.js +18 -0
  38. package/dist/esm/audio/Sound.js.map +1 -1
  39. package/dist/esm/audio/audio-context.d.ts +48 -0
  40. package/dist/esm/audio/audio-context.js +48 -5
  41. package/dist/esm/audio/audio-context.js.map +1 -1
  42. package/dist/esm/audio/filters/ChorusFilter.d.ts +5 -0
  43. package/dist/esm/audio/filters/ChorusFilter.js +4 -0
  44. package/dist/esm/audio/filters/ChorusFilter.js.map +1 -1
  45. package/dist/esm/audio/filters/CompressorFilter.d.ts +12 -0
  46. package/dist/esm/audio/filters/CompressorFilter.js +11 -0
  47. package/dist/esm/audio/filters/CompressorFilter.js.map +1 -1
  48. package/dist/esm/audio/filters/DelayFilter.d.ts +11 -0
  49. package/dist/esm/audio/filters/DelayFilter.js +10 -0
  50. package/dist/esm/audio/filters/DelayFilter.js.map +1 -1
  51. package/dist/esm/audio/filters/DuckingFilter.d.ts +13 -0
  52. package/dist/esm/audio/filters/DuckingFilter.js +12 -0
  53. package/dist/esm/audio/filters/DuckingFilter.js.map +1 -1
  54. package/dist/esm/audio/filters/EqualizerFilter.d.ts +20 -0
  55. package/dist/esm/audio/filters/EqualizerFilter.js +40 -0
  56. package/dist/esm/audio/filters/EqualizerFilter.js.map +1 -1
  57. package/dist/esm/audio/filters/GranularFilter.d.ts +6 -0
  58. package/dist/esm/audio/filters/GranularFilter.js +6 -0
  59. package/dist/esm/audio/filters/GranularFilter.js.map +1 -1
  60. package/dist/esm/audio/filters/HighpassFilter.d.ts +10 -0
  61. package/dist/esm/audio/filters/HighpassFilter.js +9 -0
  62. package/dist/esm/audio/filters/HighpassFilter.js.map +1 -1
  63. package/dist/esm/audio/filters/LowpassFilter.d.ts +10 -0
  64. package/dist/esm/audio/filters/LowpassFilter.js +9 -0
  65. package/dist/esm/audio/filters/LowpassFilter.js.map +1 -1
  66. package/dist/esm/audio/filters/PitchShiftFilter.d.ts +2 -0
  67. package/dist/esm/audio/filters/PitchShiftFilter.js +2 -0
  68. package/dist/esm/audio/filters/PitchShiftFilter.js.map +1 -1
  69. package/dist/esm/audio/filters/ReverbFilter.d.ts +12 -0
  70. package/dist/esm/audio/filters/ReverbFilter.js +11 -0
  71. package/dist/esm/audio/filters/ReverbFilter.js.map +1 -1
  72. package/dist/esm/audio/filters/VocoderFilter.d.ts +11 -0
  73. package/dist/esm/audio/filters/VocoderFilter.js +11 -0
  74. package/dist/esm/audio/filters/VocoderFilter.js.map +1 -1
  75. package/dist/esm/audio/filters/WorkletFilter.d.ts +6 -1
  76. package/dist/esm/audio/filters/WorkletFilter.js +6 -1
  77. package/dist/esm/audio/filters/WorkletFilter.js.map +1 -1
  78. package/dist/esm/core/Application.d.ts +63 -0
  79. package/dist/esm/core/Application.js +61 -0
  80. package/dist/esm/core/Application.js.map +1 -1
  81. package/dist/esm/core/Bounds.d.ts +23 -0
  82. package/dist/esm/core/Bounds.js +23 -0
  83. package/dist/esm/core/Bounds.js.map +1 -1
  84. package/dist/esm/core/Clock.d.ts +21 -0
  85. package/dist/esm/core/Clock.js +21 -0
  86. package/dist/esm/core/Clock.js.map +1 -1
  87. package/dist/esm/core/Color.d.ts +35 -0
  88. package/dist/esm/core/Color.js +35 -0
  89. package/dist/esm/core/Color.js.map +1 -1
  90. package/dist/esm/core/Scene.d.ts +46 -0
  91. package/dist/esm/core/Scene.js +27 -0
  92. package/dist/esm/core/Scene.js.map +1 -1
  93. package/dist/esm/core/SceneManager.d.ts +62 -0
  94. package/dist/esm/core/SceneManager.js +49 -0
  95. package/dist/esm/core/SceneManager.js.map +1 -1
  96. package/dist/esm/core/SceneNode.d.ts +31 -0
  97. package/dist/esm/core/SceneNode.js +31 -0
  98. package/dist/esm/core/SceneNode.js.map +1 -1
  99. package/dist/esm/core/Signal.d.ts +44 -0
  100. package/dist/esm/core/Signal.js +39 -0
  101. package/dist/esm/core/Signal.js.map +1 -1
  102. package/dist/esm/core/Time.d.ts +21 -0
  103. package/dist/esm/core/Time.js +21 -0
  104. package/dist/esm/core/Time.js.map +1 -1
  105. package/dist/esm/core/Timer.d.ts +7 -0
  106. package/dist/esm/core/Timer.js +7 -0
  107. package/dist/esm/core/Timer.js.map +1 -1
  108. package/dist/esm/core/capabilities.d.ts +12 -0
  109. package/dist/esm/core/capabilities.js +12 -0
  110. package/dist/esm/core/capabilities.js.map +1 -1
  111. package/dist/esm/core/types.d.ts +37 -0
  112. package/dist/esm/core/utils.d.ts +48 -0
  113. package/dist/esm/core/utils.js +48 -0
  114. package/dist/esm/core/utils.js.map +1 -1
  115. package/dist/esm/debug/BoundingBoxesLayer.d.ts +8 -0
  116. package/dist/esm/debug/BoundingBoxesLayer.js +8 -0
  117. package/dist/esm/debug/BoundingBoxesLayer.js.map +1 -1
  118. package/dist/esm/debug/DebugLayer.d.ts +16 -3
  119. package/dist/esm/debug/DebugLayer.js +11 -3
  120. package/dist/esm/debug/DebugLayer.js.map +1 -1
  121. package/dist/esm/debug/DebugOverlay.d.ts +11 -0
  122. package/dist/esm/debug/DebugOverlay.js +6 -0
  123. package/dist/esm/debug/DebugOverlay.js.map +1 -1
  124. package/dist/esm/debug/HitTestLayer.d.ts +9 -0
  125. package/dist/esm/debug/HitTestLayer.js +9 -0
  126. package/dist/esm/debug/HitTestLayer.js.map +1 -1
  127. package/dist/esm/debug/PerformanceLayer.d.ts +17 -1
  128. package/dist/esm/debug/PerformanceLayer.js +18 -0
  129. package/dist/esm/debug/PerformanceLayer.js.map +1 -1
  130. package/dist/esm/debug/PointerStackLayer.d.ts +8 -0
  131. package/dist/esm/debug/PointerStackLayer.js +10 -2
  132. package/dist/esm/debug/PointerStackLayer.js.map +1 -1
  133. package/dist/esm/index.js +2 -2
  134. package/dist/esm/input/ArcadeStickGamepadMapping.d.ts +7 -0
  135. package/dist/esm/input/ArcadeStickGamepadMapping.js +7 -0
  136. package/dist/esm/input/ArcadeStickGamepadMapping.js.map +1 -1
  137. package/dist/esm/input/GameCubeGamepadMapping.d.ts +9 -0
  138. package/dist/esm/input/GameCubeGamepadMapping.js +9 -0
  139. package/dist/esm/input/GameCubeGamepadMapping.js.map +1 -1
  140. package/dist/esm/input/Gamepad.d.ts +48 -0
  141. package/dist/esm/input/Gamepad.js +43 -0
  142. package/dist/esm/input/Gamepad.js.map +1 -1
  143. package/dist/esm/input/GamepadChannels.d.ts +8 -0
  144. package/dist/esm/input/GamepadChannels.js +8 -0
  145. package/dist/esm/input/GamepadChannels.js.map +1 -1
  146. package/dist/esm/input/GamepadControl.d.ts +18 -0
  147. package/dist/esm/input/GamepadControl.js +13 -0
  148. package/dist/esm/input/GamepadControl.js.map +1 -1
  149. package/dist/esm/input/GamepadDefinitions.d.ts +64 -1
  150. package/dist/esm/input/GamepadDefinitions.js +40 -1
  151. package/dist/esm/input/GamepadDefinitions.js.map +1 -1
  152. package/dist/esm/input/GamepadMapping.d.ts +32 -2
  153. package/dist/esm/input/GamepadMapping.js +24 -0
  154. package/dist/esm/input/GamepadMapping.js.map +1 -1
  155. package/dist/esm/input/GamepadPromptLayouts.d.ts +32 -1
  156. package/dist/esm/input/GamepadPromptLayouts.js +25 -1
  157. package/dist/esm/input/GamepadPromptLayouts.js.map +1 -1
  158. package/dist/esm/input/GenericDualAnalogGamepadMapping.d.ts +10 -0
  159. package/dist/esm/input/GenericDualAnalogGamepadMapping.js +10 -0
  160. package/dist/esm/input/GenericDualAnalogGamepadMapping.js.map +1 -1
  161. package/dist/esm/input/GestureRecognizer.d.ts +11 -2
  162. package/dist/esm/input/GestureRecognizer.js +11 -2
  163. package/dist/esm/input/GestureRecognizer.js.map +1 -1
  164. package/dist/esm/input/Input.d.ts +24 -0
  165. package/dist/esm/input/Input.js +22 -0
  166. package/dist/esm/input/Input.js.map +1 -1
  167. package/dist/esm/input/InputManager.d.ts +33 -0
  168. package/dist/esm/input/InputManager.js +33 -0
  169. package/dist/esm/input/InputManager.js.map +1 -1
  170. package/dist/esm/input/InteractionEvent.d.ts +13 -0
  171. package/dist/esm/input/InteractionEvent.js +8 -0
  172. package/dist/esm/input/InteractionEvent.js.map +1 -1
  173. package/dist/esm/input/InteractionManager.d.ts +33 -4
  174. package/dist/esm/input/InteractionManager.js +33 -4
  175. package/dist/esm/input/InteractionManager.js.map +1 -1
  176. package/dist/esm/input/JoyConLeftGamepadMapping.d.ts +9 -0
  177. package/dist/esm/input/JoyConLeftGamepadMapping.js +9 -0
  178. package/dist/esm/input/JoyConLeftGamepadMapping.js.map +1 -1
  179. package/dist/esm/input/JoyConRightGamepadMapping.d.ts +9 -0
  180. package/dist/esm/input/JoyConRightGamepadMapping.js +9 -0
  181. package/dist/esm/input/JoyConRightGamepadMapping.js.map +1 -1
  182. package/dist/esm/input/PlayStationGamepadMapping.d.ts +8 -0
  183. package/dist/esm/input/PlayStationGamepadMapping.js +8 -0
  184. package/dist/esm/input/PlayStationGamepadMapping.js.map +1 -1
  185. package/dist/esm/input/Pointer.d.ts +22 -0
  186. package/dist/esm/input/Pointer.js +22 -0
  187. package/dist/esm/input/Pointer.js.map +1 -1
  188. package/dist/esm/input/SteamControllerGamepadMapping.d.ts +8 -0
  189. package/dist/esm/input/SteamControllerGamepadMapping.js +8 -0
  190. package/dist/esm/input/SteamControllerGamepadMapping.js.map +1 -1
  191. package/dist/esm/input/SwitchProGamepadMapping.d.ts +9 -0
  192. package/dist/esm/input/SwitchProGamepadMapping.js +9 -0
  193. package/dist/esm/input/SwitchProGamepadMapping.js.map +1 -1
  194. package/dist/esm/input/XboxGamepadMapping.d.ts +8 -0
  195. package/dist/esm/input/XboxGamepadMapping.js +8 -0
  196. package/dist/esm/input/XboxGamepadMapping.js.map +1 -1
  197. package/dist/esm/input/types.d.ts +20 -0
  198. package/dist/esm/input/types.js +20 -0
  199. package/dist/esm/input/types.js.map +1 -1
  200. package/dist/esm/math/AbstractVector.d.ts +83 -0
  201. package/dist/esm/math/AbstractVector.js +83 -0
  202. package/dist/esm/math/AbstractVector.js.map +1 -1
  203. package/dist/esm/math/Circle.d.ts +32 -0
  204. package/dist/esm/math/Circle.js +34 -2
  205. package/dist/esm/math/Circle.js.map +1 -1
  206. package/dist/esm/math/CircleLike.d.ts +1 -0
  207. package/dist/esm/math/Collision.d.ts +39 -0
  208. package/dist/esm/math/Collision.js +5 -0
  209. package/dist/esm/math/Collision.js.map +1 -1
  210. package/dist/esm/math/Ellipse.d.ts +11 -0
  211. package/dist/esm/math/Ellipse.js +18 -2
  212. package/dist/esm/math/Ellipse.js.map +1 -1
  213. package/dist/esm/math/EllipseLike.d.ts +3 -0
  214. package/dist/esm/math/Flags.d.ts +31 -0
  215. package/dist/esm/math/Flags.js +31 -0
  216. package/dist/esm/math/Flags.js.map +1 -1
  217. package/dist/esm/math/Interval.d.ts +15 -0
  218. package/dist/esm/math/Interval.js +15 -0
  219. package/dist/esm/math/Interval.js.map +1 -1
  220. package/dist/esm/math/Line.d.ts +17 -1
  221. package/dist/esm/math/Line.js +17 -1
  222. package/dist/esm/math/Line.js.map +1 -1
  223. package/dist/esm/math/LineLike.d.ts +1 -0
  224. package/dist/esm/math/Matrix.d.ts +44 -3
  225. package/dist/esm/math/Matrix.js +44 -3
  226. package/dist/esm/math/Matrix.js.map +1 -1
  227. package/dist/esm/math/ObservableSize.d.ts +7 -0
  228. package/dist/esm/math/ObservableSize.js +7 -0
  229. package/dist/esm/math/ObservableSize.js.map +1 -1
  230. package/dist/esm/math/ObservableVector.d.ts +9 -0
  231. package/dist/esm/math/ObservableVector.js +9 -0
  232. package/dist/esm/math/ObservableVector.js.map +1 -1
  233. package/dist/esm/math/PointLike.d.ts +1 -0
  234. package/dist/esm/math/PolarVector.d.ts +15 -0
  235. package/dist/esm/math/PolarVector.js +16 -1
  236. package/dist/esm/math/PolarVector.js.map +1 -1
  237. package/dist/esm/math/Polygon.d.ts +20 -0
  238. package/dist/esm/math/Polygon.js +20 -0
  239. package/dist/esm/math/Polygon.js.map +1 -1
  240. package/dist/esm/math/PolygonLike.d.ts +4 -0
  241. package/dist/esm/math/Quadtree.d.ts +40 -3
  242. package/dist/esm/math/Quadtree.js +39 -3
  243. package/dist/esm/math/Quadtree.js.map +1 -1
  244. package/dist/esm/math/Random.d.ts +25 -0
  245. package/dist/esm/math/Random.js +25 -0
  246. package/dist/esm/math/Random.js.map +1 -1
  247. package/dist/esm/math/Rectangle.d.ts +15 -0
  248. package/dist/esm/math/Rectangle.js +17 -2
  249. package/dist/esm/math/Rectangle.js.map +1 -1
  250. package/dist/esm/math/RectangleLike.d.ts +1 -0
  251. package/dist/esm/math/Segment.d.ts +7 -0
  252. package/dist/esm/math/Segment.js +7 -0
  253. package/dist/esm/math/Segment.js.map +1 -1
  254. package/dist/esm/math/ShapeLike.d.ts +6 -0
  255. package/dist/esm/math/Size.d.ts +9 -0
  256. package/dist/esm/math/Size.js +9 -0
  257. package/dist/esm/math/Size.js.map +1 -1
  258. package/dist/esm/math/Vector.d.ts +16 -0
  259. package/dist/esm/math/Vector.js +16 -0
  260. package/dist/esm/math/Vector.js.map +1 -1
  261. package/dist/esm/math/collision-detection.d.ts +47 -1
  262. package/dist/esm/math/collision-detection.js +228 -17
  263. package/dist/esm/math/collision-detection.js.map +1 -1
  264. package/dist/esm/math/collision-primitives.d.ts +23 -0
  265. package/dist/esm/math/collision-primitives.js +23 -0
  266. package/dist/esm/math/collision-primitives.js.map +1 -1
  267. package/dist/esm/math/geometry.d.ts +42 -0
  268. package/dist/esm/math/geometry.js +37 -0
  269. package/dist/esm/math/geometry.js.map +1 -1
  270. package/dist/esm/math/utils.d.ts +41 -0
  271. package/dist/esm/math/utils.js +41 -0
  272. package/dist/esm/math/utils.js.map +1 -1
  273. package/dist/esm/particles/Particle.d.ts +37 -0
  274. package/dist/esm/particles/Particle.js +37 -0
  275. package/dist/esm/particles/Particle.js.map +1 -1
  276. package/dist/esm/particles/ParticleProperties.d.ts +15 -0
  277. package/dist/esm/particles/ParticleSystem.d.ts +69 -0
  278. package/dist/esm/particles/ParticleSystem.js +69 -0
  279. package/dist/esm/particles/ParticleSystem.js.map +1 -1
  280. package/dist/esm/particles/affectors/ColorAffector.d.ts +13 -0
  281. package/dist/esm/particles/affectors/ColorAffector.js +13 -0
  282. package/dist/esm/particles/affectors/ColorAffector.js.map +1 -1
  283. package/dist/esm/particles/affectors/ForceAffector.d.ts +11 -0
  284. package/dist/esm/particles/affectors/ForceAffector.js +11 -0
  285. package/dist/esm/particles/affectors/ForceAffector.js.map +1 -1
  286. package/dist/esm/particles/affectors/ParticleAffector.d.ts +13 -0
  287. package/dist/esm/particles/affectors/ScaleAffector.d.ts +10 -0
  288. package/dist/esm/particles/affectors/ScaleAffector.js +10 -0
  289. package/dist/esm/particles/affectors/ScaleAffector.js.map +1 -1
  290. package/dist/esm/particles/affectors/TorqueAffector.d.ts +11 -0
  291. package/dist/esm/particles/affectors/TorqueAffector.js +11 -0
  292. package/dist/esm/particles/affectors/TorqueAffector.js.map +1 -1
  293. package/dist/esm/particles/emitters/ParticleEmitter.d.ts +13 -0
  294. package/dist/esm/particles/emitters/ParticleOptions.d.ts +16 -0
  295. package/dist/esm/particles/emitters/ParticleOptions.js +16 -0
  296. package/dist/esm/particles/emitters/ParticleOptions.js.map +1 -1
  297. package/dist/esm/particles/emitters/UniversalEmitter.d.ts +23 -0
  298. package/dist/esm/particles/emitters/UniversalEmitter.js +23 -0
  299. package/dist/esm/particles/emitters/UniversalEmitter.js.map +1 -1
  300. package/dist/esm/rendering/CallbackRenderPass.d.ts +12 -0
  301. package/dist/esm/rendering/CallbackRenderPass.js +12 -0
  302. package/dist/esm/rendering/CallbackRenderPass.js.map +1 -1
  303. package/dist/esm/rendering/Container.d.ts +43 -0
  304. package/dist/esm/rendering/Container.js +43 -0
  305. package/dist/esm/rendering/Container.js.map +1 -1
  306. package/dist/esm/rendering/Drawable.d.ts +22 -0
  307. package/dist/esm/rendering/Drawable.js +22 -0
  308. package/dist/esm/rendering/Drawable.js.map +1 -1
  309. package/dist/esm/rendering/RenderBackend.d.ts +13 -0
  310. package/dist/esm/rendering/RenderBackendType.d.ts +4 -0
  311. package/dist/esm/rendering/RenderBackendType.js +4 -0
  312. package/dist/esm/rendering/RenderBackendType.js.map +1 -1
  313. package/dist/esm/rendering/RenderNode.d.ts +18 -0
  314. package/dist/esm/rendering/RenderNode.js +18 -0
  315. package/dist/esm/rendering/RenderNode.js.map +1 -1
  316. package/dist/esm/rendering/RenderPass.d.ts +8 -0
  317. package/dist/esm/rendering/RenderStats.d.ts +19 -0
  318. package/dist/esm/rendering/RenderStats.js +7 -0
  319. package/dist/esm/rendering/RenderStats.js.map +1 -1
  320. package/dist/esm/rendering/RenderTarget.d.ts +17 -0
  321. package/dist/esm/rendering/RenderTarget.js +17 -0
  322. package/dist/esm/rendering/RenderTarget.js.map +1 -1
  323. package/dist/esm/rendering/RenderTargetPass.d.ts +11 -0
  324. package/dist/esm/rendering/RenderTargetPass.js +7 -0
  325. package/dist/esm/rendering/RenderTargetPass.js.map +1 -1
  326. package/dist/esm/rendering/Renderer.d.ts +15 -0
  327. package/dist/esm/rendering/RendererRegistry.d.ts +7 -0
  328. package/dist/esm/rendering/RendererRegistry.js +7 -0
  329. package/dist/esm/rendering/RendererRegistry.js.map +1 -1
  330. package/dist/esm/rendering/View.d.ts +67 -2
  331. package/dist/esm/rendering/View.js +57 -0
  332. package/dist/esm/rendering/View.js.map +1 -1
  333. package/dist/esm/rendering/filters/BlurFilter.d.ts +9 -0
  334. package/dist/esm/rendering/filters/BlurFilter.js +8 -0
  335. package/dist/esm/rendering/filters/BlurFilter.js.map +1 -1
  336. package/dist/esm/rendering/filters/ColorFilter.d.ts +7 -0
  337. package/dist/esm/rendering/filters/ColorFilter.js +7 -0
  338. package/dist/esm/rendering/filters/ColorFilter.js.map +1 -1
  339. package/dist/esm/rendering/filters/Filter.d.ts +23 -0
  340. package/dist/esm/rendering/filters/Filter.js +20 -0
  341. package/dist/esm/rendering/filters/Filter.js.map +1 -1
  342. package/dist/esm/rendering/filters/WebGl2ShaderFilter.d.ts +5 -0
  343. package/dist/esm/rendering/filters/WebGl2ShaderFilter.js +5 -0
  344. package/dist/esm/rendering/filters/WebGl2ShaderFilter.js.map +1 -1
  345. package/dist/esm/rendering/filters/WebGpuShaderFilter.d.ts +5 -0
  346. package/dist/esm/rendering/filters/WebGpuShaderFilter.js +5 -0
  347. package/dist/esm/rendering/filters/WebGpuShaderFilter.js.map +1 -1
  348. package/dist/esm/rendering/mesh/Mesh.d.ts +2 -0
  349. package/dist/esm/rendering/mesh/Mesh.js +2 -0
  350. package/dist/esm/rendering/mesh/Mesh.js.map +1 -1
  351. package/dist/esm/rendering/primitives/Graphics.d.ts +34 -0
  352. package/dist/esm/rendering/primitives/Graphics.js +34 -0
  353. package/dist/esm/rendering/primitives/Graphics.js.map +1 -1
  354. package/dist/esm/rendering/shader/Shader.d.ts +36 -0
  355. package/dist/esm/rendering/shader/Shader.js +26 -0
  356. package/dist/esm/rendering/shader/Shader.js.map +1 -1
  357. package/dist/esm/rendering/shader/ShaderAttribute.d.ts +13 -0
  358. package/dist/esm/rendering/shader/ShaderAttribute.js +13 -0
  359. package/dist/esm/rendering/shader/ShaderAttribute.js.map +1 -1
  360. package/dist/esm/rendering/shader/ShaderUniform.d.ts +27 -0
  361. package/dist/esm/rendering/shader/ShaderUniform.js +28 -1
  362. package/dist/esm/rendering/shader/ShaderUniform.js.map +1 -1
  363. package/dist/esm/rendering/sprite/AnimatedSprite.d.ts +38 -0
  364. package/dist/esm/rendering/sprite/AnimatedSprite.js +36 -0
  365. package/dist/esm/rendering/sprite/AnimatedSprite.js.map +1 -1
  366. package/dist/esm/rendering/sprite/Sprite.d.ts +56 -0
  367. package/dist/esm/rendering/sprite/Sprite.js +56 -0
  368. package/dist/esm/rendering/sprite/Sprite.js.map +1 -1
  369. package/dist/esm/rendering/sprite/Spritesheet.d.ts +25 -0
  370. package/dist/esm/rendering/sprite/Spritesheet.js +20 -0
  371. package/dist/esm/rendering/sprite/Spritesheet.js.map +1 -1
  372. package/dist/esm/rendering/text/Text.d.ts +2 -0
  373. package/dist/esm/rendering/text/Text.js +2 -0
  374. package/dist/esm/rendering/text/Text.js.map +1 -1
  375. package/dist/esm/rendering/text/TextStyle.d.ts +29 -0
  376. package/dist/esm/rendering/text/TextStyle.js +24 -0
  377. package/dist/esm/rendering/text/TextStyle.js.map +1 -1
  378. package/dist/esm/rendering/text/types.d.ts +1 -0
  379. package/dist/esm/rendering/texture/RenderTexture.d.ts +16 -0
  380. package/dist/esm/rendering/texture/RenderTexture.js +16 -0
  381. package/dist/esm/rendering/texture/RenderTexture.js.map +1 -1
  382. package/dist/esm/rendering/texture/Sampler.d.ts +23 -0
  383. package/dist/esm/rendering/texture/Sampler.js +13 -0
  384. package/dist/esm/rendering/texture/Sampler.js.map +1 -1
  385. package/dist/esm/rendering/texture/Texture.d.ts +30 -0
  386. package/dist/esm/rendering/texture/Texture.js +30 -0
  387. package/dist/esm/rendering/texture/Texture.js.map +1 -1
  388. package/dist/esm/rendering/types.d.ts +29 -0
  389. package/dist/esm/rendering/types.js +29 -0
  390. package/dist/esm/rendering/types.js.map +1 -1
  391. package/dist/esm/rendering/utils.d.ts +20 -0
  392. package/dist/esm/rendering/utils.js +10 -0
  393. package/dist/esm/rendering/utils.js.map +1 -1
  394. package/dist/esm/rendering/video/Video.d.ts +35 -1
  395. package/dist/esm/rendering/video/Video.js +36 -2
  396. package/dist/esm/rendering/video/Video.js.map +1 -1
  397. package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.d.ts +7 -0
  398. package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.js +7 -0
  399. package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.js.map +1 -1
  400. package/dist/esm/rendering/webgl2/WebGl2Backend.d.ts +13 -0
  401. package/dist/esm/rendering/webgl2/WebGl2Backend.js +13 -0
  402. package/dist/esm/rendering/webgl2/WebGl2Backend.js.map +1 -1
  403. package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.d.ts +8 -0
  404. package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.js +8 -0
  405. package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.js.map +1 -1
  406. package/dist/esm/rendering/webgpu/WebGpuBackend.d.ts +35 -0
  407. package/dist/esm/rendering/webgpu/WebGpuBackend.js +135 -5
  408. package/dist/esm/rendering/webgpu/WebGpuBackend.js.map +1 -1
  409. package/dist/esm/resources/AbstractAssetFactory.d.ts +20 -0
  410. package/dist/esm/resources/AbstractAssetFactory.js +20 -0
  411. package/dist/esm/resources/AbstractAssetFactory.js.map +1 -1
  412. package/dist/esm/resources/AssetFactory.d.ts +26 -0
  413. package/dist/esm/resources/AssetManifest.d.ts +45 -0
  414. package/dist/esm/resources/AssetManifest.js +25 -0
  415. package/dist/esm/resources/AssetManifest.js.map +1 -1
  416. package/dist/esm/resources/CacheFirstStrategy.d.ts +12 -0
  417. package/dist/esm/resources/CacheFirstStrategy.js +12 -0
  418. package/dist/esm/resources/CacheFirstStrategy.js.map +1 -1
  419. package/dist/esm/resources/CacheStore.d.ts +23 -0
  420. package/dist/esm/resources/CacheStrategy.d.ts +20 -0
  421. package/dist/esm/resources/Database.d.ts +45 -0
  422. package/dist/esm/resources/FactoryRegistry.d.ts +28 -0
  423. package/dist/esm/resources/FactoryRegistry.js +24 -0
  424. package/dist/esm/resources/FactoryRegistry.js.map +1 -1
  425. package/dist/esm/resources/IndexedDbDatabase.d.ts +22 -1
  426. package/dist/esm/resources/IndexedDbDatabase.js +21 -0
  427. package/dist/esm/resources/IndexedDbDatabase.js.map +1 -1
  428. package/dist/esm/resources/IndexedDbStore.d.ts +20 -0
  429. package/dist/esm/resources/IndexedDbStore.js +12 -0
  430. package/dist/esm/resources/IndexedDbStore.js.map +1 -1
  431. package/dist/esm/resources/Loader.d.ts +167 -0
  432. package/dist/esm/resources/Loader.js +110 -0
  433. package/dist/esm/resources/Loader.js.map +1 -1
  434. package/dist/esm/resources/NetworkOnlyStrategy.d.ts +8 -0
  435. package/dist/esm/resources/NetworkOnlyStrategy.js +8 -0
  436. package/dist/esm/resources/NetworkOnlyStrategy.js.map +1 -1
  437. package/dist/esm/resources/factories/BinaryFactory.d.ts +13 -0
  438. package/dist/esm/resources/factories/BinaryFactory.js +13 -0
  439. package/dist/esm/resources/factories/BinaryFactory.js.map +1 -1
  440. package/dist/esm/resources/factories/FontFactory.d.ts +37 -0
  441. package/dist/esm/resources/factories/FontFactory.js +26 -0
  442. package/dist/esm/resources/factories/FontFactory.js.map +1 -1
  443. package/dist/esm/resources/factories/ImageFactory.d.ts +24 -0
  444. package/dist/esm/resources/factories/ImageFactory.js +19 -0
  445. package/dist/esm/resources/factories/ImageFactory.js.map +1 -1
  446. package/dist/esm/resources/factories/JsonFactory.d.ts +13 -0
  447. package/dist/esm/resources/factories/JsonFactory.js +13 -0
  448. package/dist/esm/resources/factories/JsonFactory.js.map +1 -1
  449. package/dist/esm/resources/factories/MusicFactory.d.ts +36 -0
  450. package/dist/esm/resources/factories/MusicFactory.js +44 -4
  451. package/dist/esm/resources/factories/MusicFactory.js.map +1 -1
  452. package/dist/esm/resources/factories/SoundFactory.d.ts +29 -0
  453. package/dist/esm/resources/factories/SoundFactory.js +18 -0
  454. package/dist/esm/resources/factories/SoundFactory.js.map +1 -1
  455. package/dist/esm/resources/factories/SvgFactory.d.ts +19 -0
  456. package/dist/esm/resources/factories/SvgFactory.js +19 -0
  457. package/dist/esm/resources/factories/SvgFactory.js.map +1 -1
  458. package/dist/esm/resources/factories/TextFactory.d.ts +11 -0
  459. package/dist/esm/resources/factories/TextFactory.js +11 -0
  460. package/dist/esm/resources/factories/TextFactory.js.map +1 -1
  461. package/dist/esm/resources/factories/TextureFactory.d.ts +25 -0
  462. package/dist/esm/resources/factories/TextureFactory.js +20 -0
  463. package/dist/esm/resources/factories/TextureFactory.js.map +1 -1
  464. package/dist/esm/resources/factories/VideoFactory.d.ts +37 -0
  465. package/dist/esm/resources/factories/VideoFactory.js +48 -5
  466. package/dist/esm/resources/factories/VideoFactory.js.map +1 -1
  467. package/dist/esm/resources/factories/VttFactory.d.ts +18 -0
  468. package/dist/esm/resources/factories/VttFactory.js +24 -0
  469. package/dist/esm/resources/factories/VttFactory.js.map +1 -1
  470. package/dist/esm/resources/factories/WasmFactory.d.ts +16 -0
  471. package/dist/esm/resources/factories/WasmFactory.js +16 -0
  472. package/dist/esm/resources/factories/WasmFactory.js.map +1 -1
  473. package/dist/esm/resources/utils.d.ts +10 -0
  474. package/dist/esm/resources/utils.js +10 -0
  475. package/dist/esm/resources/utils.js.map +1 -1
  476. package/dist/exo.esm.js +3392 -59
  477. package/dist/exo.esm.js.map +1 -1
  478. package/package.json +7 -8
package/CHANGELOG.md CHANGED
@@ -4,6 +4,114 @@ All notable changes to ExoJS are documented in this file.
4
4
 
5
5
  The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and the project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [0.7.12] - 2026-05-07
8
+
9
+ API audit cleanup pass — implements collision-response computation that was
10
+ silently returning zero/null, exports previously-internal type aliases that
11
+ callers couldn't otherwise type, and removes a handful of small API papercuts
12
+ surfaced during the JSDoc-coverage pass that landed across `0.7.x`.
13
+
14
+ ### Fixed — Collision-response computation
15
+
16
+ Four collision paths were returning a `CollisionResponse` whose `projectionN`
17
+ and `projectionV` were zero vectors (or returning `null` outright), making
18
+ the response unusable for separation/sliding logic.
19
+
20
+ - **`getCollisionRectangleRectangle`** — now returns the minimum-translation
21
+ vector (MTV) along the axis with the smaller penetration, signed by the
22
+ centre-to-centre direction. Existing `overlap` and containment flags are
23
+ unchanged.
24
+ - **`getCollisionCircleRectangle`** — rewritten to use the standard
25
+ closest-point-on-rect algorithm. Previously computed distance against an
26
+ out-of-rect anchor point, producing a wrong result whenever the circle
27
+ centre was inside the rectangle. Normal points from rect surface toward
28
+ circle; falls back to the smaller-exit axis when the circle centre is
29
+ inside the rect.
30
+ - **`Ellipse.collidesWith`** — implements `Ellipse`-vs-`Rectangle` and
31
+ `Ellipse`-vs-`Circle` via the directional ellipse-boundary equation
32
+ `1 / sqrt((dx/rx)² + (dy/ry)²)`. Other targets (ellipse-vs-ellipse,
33
+ ellipse-vs-polygon, ellipse-vs-line) still return `null` —
34
+ `intersectsWith` remains the boolean fallback.
35
+ - **`Line.collidesWith`** — kept returning `null` (lines have no
36
+ meaningful SAT response), but the JSDoc now states the contract
37
+ explicitly so callers don't expect a vector.
38
+
39
+ `Rectangle.collidesWith` and `Circle.collidesWith` route ellipse targets to
40
+ the new functions via the existing `swap` flag.
41
+
42
+ ### Fixed — Object-URL leak (re-emphasised; was 0.7.11 fix)
43
+
44
+ The 0.7.11 fix for `MusicFactory` and `VideoFactory` URL revocation is
45
+ unchanged in 0.7.12 — listing it here for completeness because the pre-1.0
46
+ audit findings memory carries a forward reference to it.
47
+
48
+ ### Changed — Visibility / readonly tightening (potentially breaking)
49
+
50
+ Pre-1.0 cleanups that narrow the public surface where callers could
51
+ previously poke at internal state:
52
+
53
+ - **`GamepadMapping.buttons` / `.axes`** typed `ReadonlyArray<GamepadControl>`
54
+ instead of `Array<GamepadControl>`. Internal `destroy()` retains the
55
+ `length = 0` clear via a local cast. **Breaking** for callers that were
56
+ pushing or splicing the arrays directly.
57
+ - **`View.updateTransform()` / `.updateBounds()`** changed from `public` to
58
+ `protected`. They were never safe to call externally — invoking them
59
+ bypassed the dirty-flag clearing in `getTransform()` / `getBounds()` and
60
+ could cause redundant recalculation. **Breaking** if you relied on them.
61
+ - **`IndexedDbDatabase.getObjectStore()`** changed from `public` to
62
+ `protected`. Only callers were the class's own `load`/`save`/`delete`
63
+ methods. **Breaking** if any subclass referenced it externally.
64
+ - **`GamepadDefinitions.normalizeIds`** is no longer exported. It was an
65
+ in-file helper that leaked through the barrel. **Breaking** for any
66
+ caller importing it directly.
67
+ - **`GamepadPromptLayouts.buildControlChannelMap()`** renamed to
68
+ `getControlChannelMap()` — the name now matches the behaviour (returns a
69
+ pre-built constant; never builds anything). **Breaking** rename.
70
+
71
+ ### Added — API surface
72
+
73
+ Additive changes; not breaking:
74
+
75
+ - `EqualizerFilter` now exposes runtime setters for `lowFrequency`,
76
+ `midFrequency`, and `highFrequency` (previously only construction-time).
77
+ Smooth ramp via `setTargetAtTime` to avoid clicks.
78
+ - `Filter` (abstract base for post-process filters) now declares a
79
+ `destroy()` method with a no-op default. `BlurFilter` / `ColorFilter` /
80
+ `WebGl2ShaderFilter` / `WebGpuShaderFilter` mark their existing
81
+ implementations as `override`. Generic-filter consumers no longer need
82
+ a cast to release filters.
83
+ - `getCollisionEllipseRectangle` and `getCollisionEllipseCircle` are
84
+ exported from the math barrel for direct use.
85
+
86
+ ### Changed — Internal cleanups
87
+
88
+ Doc-only and signature-only refactors:
89
+
90
+ - `Sprite._invalidateSubtreeTransform` / `._invalidateBoundsCascade` tagged
91
+ `@internal` (they are `public` only because of TS friend-class limits).
92
+ - `_getDebugQuadtree` (InteractionManager) and `_walkBounds` (Quadtree)
93
+ tagged `@internal` to mark the friend-class link to the debug layer.
94
+ - `PerformanceLayer` declares `viewMode` explicitly to match the other
95
+ debug layers.
96
+ - `PointerStackLayer._buildLines` lost its two unused `_panelX` / `_panelY`
97
+ parameters. Internal-only; not user-visible.
98
+ - `intersectionCirclePoly` got an inline comment explaining the
99
+ negated-frame coordinate transform.
100
+ - `AudioAnalyserOptions` interface picked up per-field JSDoc with documented
101
+ defaults.
102
+ - `SoundFactoryOptions.poolSize` JSDoc names the implicit `Sound` default (8).
103
+ - `ChorusFilter` lost a redundant `as AudioParam` cast.
104
+ - `Video.setupWithAudioContext` is now an arrow-bound field instead of a
105
+ context-bound method; cleaner internally, no API change.
106
+ - `ShaderUniform.propName` uses `String.prototype.substring` instead of the
107
+ deprecated `substr`.
108
+ - `Tween.repeat` JSDoc now ships an `@example` block clarifying that
109
+ `repeat(2)` runs the animation three times total.
110
+ - `Line.collidesWith` documents the always-`null` behaviour as intentional.
111
+ - `RenderTarget.addDestroyListener` / `.removeDestroyListener` got JSDoc
112
+ pointing out that `RenderTexture` (which extends `RenderTarget`) inherits
113
+ them; the audit finding that claimed otherwise was incorrect.
114
+
7
115
  ## [0.7.11] - 2026-05-07
8
116
 
9
117
  Performance pass — adds a multi-domain benchmark suite, an auto-profiler
@@ -1,6 +1,34 @@
1
1
  import { TweenState } from './types';
2
2
  import type { EasingFunction, TweenLifecycleCallback, TweenUpdateCallback } from './types';
3
3
  import type { TweenManager } from './TweenManager';
4
+ /**
5
+ * Animates numeric properties of `target` from their current value to a
6
+ * configured end value over a duration in seconds. Supports easing, delay,
7
+ * repeat (with optional yoyo), chaining, and lifecycle callbacks
8
+ * ({@link Tween.onStart}, {@link Tween.onUpdate}, {@link Tween.onComplete},
9
+ * {@link Tween.onRepeat}).
10
+ *
11
+ * Tweens are typically created via {@link TweenManager.create}, which attaches
12
+ * them to the manager so they advance once per frame. Stand-alone usage is
13
+ * supported by calling {@link Tween.update} manually with a frame delta.
14
+ *
15
+ * Start values are captured lazily on the first update after {@link Tween.start},
16
+ * so target properties may be mutated between configuration and start without
17
+ * affecting the captured baseline.
18
+ *
19
+ * Only number-typed properties on `target` are interpolated; non-number
20
+ * properties listed in {@link Tween.to} emit a console warning and are skipped.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * app.tweens.create(sprite.position)
25
+ * .to({ x: 200 }, 1.5)
26
+ * .easing(Ease.cubicInOut)
27
+ * .yoyo()
28
+ * .repeat(-1)
29
+ * .start();
30
+ * ```
31
+ */
4
32
  export declare class Tween<T extends object = object> {
5
33
  private readonly _target;
6
34
  private _state;
@@ -49,7 +77,18 @@ export declare class Tween<T extends object = object> {
49
77
  easing(fn: EasingFunction): this;
50
78
  /**
51
79
  * Number of additional repeat cycles. -1 = infinite. Default 0 (runs once).
52
- * Note: repeat(2) means the animation runs 3 times total.
80
+ *
81
+ * The argument counts cycles **after** the first, not the total cycle
82
+ * count — `repeat(2)` runs the animation three times total (the initial
83
+ * pass plus two repeats).
84
+ *
85
+ * @example
86
+ * ```ts
87
+ * tween.repeat(0); // runs once
88
+ * tween.repeat(1); // runs twice
89
+ * tween.repeat(2); // runs three times
90
+ * tween.repeat(-1); // runs forever
91
+ * ```
53
92
  */
54
93
  repeat(count: number): this;
55
94
  /**
@@ -57,9 +96,29 @@ export declare class Tween<T extends object = object> {
57
96
  * combined with repeat(). Calling yoyo() without repeat() is a no-op.
58
97
  */
59
98
  yoyo(enabled?: boolean): this;
99
+ /**
100
+ * Register a callback fired once when the tween begins interpolating
101
+ * (after any configured delay has elapsed). Fires only on the first
102
+ * cycle — repeats do not re-trigger it.
103
+ */
60
104
  onStart(callback: TweenLifecycleCallback): this;
105
+ /**
106
+ * Register a callback fired on every active update. Receives the eased
107
+ * progress in 0..1 — already direction-flipped for yoyo cycles.
108
+ */
61
109
  onUpdate(callback: TweenUpdateCallback): this;
110
+ /**
111
+ * Register a callback fired when the tween finishes naturally (all repeat
112
+ * cycles exhausted). Does NOT fire when the tween is stopped via
113
+ * {@link Tween.stop}.
114
+ */
62
115
  onComplete(callback: TweenLifecycleCallback): this;
116
+ /**
117
+ * Register a callback fired at the boundary of each repeat cycle, after
118
+ * the cycle counter is decremented and before the next cycle begins. Not
119
+ * fired on the final cycle's completion (use {@link Tween.onComplete}
120
+ * for that).
121
+ */
63
122
  onRepeat(callback: TweenLifecycleCallback): this;
64
123
  /**
65
124
  * Start the tween. If a manager owns this tween it is already tracked;
@@ -1,6 +1,34 @@
1
1
  import { Ease } from './Easing.js';
2
2
  import { TweenState } from './types.js';
3
3
 
4
+ /**
5
+ * Animates numeric properties of `target` from their current value to a
6
+ * configured end value over a duration in seconds. Supports easing, delay,
7
+ * repeat (with optional yoyo), chaining, and lifecycle callbacks
8
+ * ({@link Tween.onStart}, {@link Tween.onUpdate}, {@link Tween.onComplete},
9
+ * {@link Tween.onRepeat}).
10
+ *
11
+ * Tweens are typically created via {@link TweenManager.create}, which attaches
12
+ * them to the manager so they advance once per frame. Stand-alone usage is
13
+ * supported by calling {@link Tween.update} manually with a frame delta.
14
+ *
15
+ * Start values are captured lazily on the first update after {@link Tween.start},
16
+ * so target properties may be mutated between configuration and start without
17
+ * affecting the captured baseline.
18
+ *
19
+ * Only number-typed properties on `target` are interpolated; non-number
20
+ * properties listed in {@link Tween.to} emit a console warning and are skipped.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * app.tweens.create(sprite.position)
25
+ * .to({ x: 200 }, 1.5)
26
+ * .easing(Ease.cubicInOut)
27
+ * .yoyo()
28
+ * .repeat(-1)
29
+ * .start();
30
+ * ```
31
+ */
4
32
  class Tween {
5
33
  _target;
6
34
  _state = TweenState.Idle;
@@ -72,7 +100,18 @@ class Tween {
72
100
  }
73
101
  /**
74
102
  * Number of additional repeat cycles. -1 = infinite. Default 0 (runs once).
75
- * Note: repeat(2) means the animation runs 3 times total.
103
+ *
104
+ * The argument counts cycles **after** the first, not the total cycle
105
+ * count — `repeat(2)` runs the animation three times total (the initial
106
+ * pass plus two repeats).
107
+ *
108
+ * @example
109
+ * ```ts
110
+ * tween.repeat(0); // runs once
111
+ * tween.repeat(1); // runs twice
112
+ * tween.repeat(2); // runs three times
113
+ * tween.repeat(-1); // runs forever
114
+ * ```
76
115
  */
77
116
  repeat(count) {
78
117
  this._repeatTotal = count;
@@ -86,18 +125,38 @@ class Tween {
86
125
  this._yoyo = enabled;
87
126
  return this;
88
127
  }
128
+ /**
129
+ * Register a callback fired once when the tween begins interpolating
130
+ * (after any configured delay has elapsed). Fires only on the first
131
+ * cycle — repeats do not re-trigger it.
132
+ */
89
133
  onStart(callback) {
90
134
  this._onStart = callback;
91
135
  return this;
92
136
  }
137
+ /**
138
+ * Register a callback fired on every active update. Receives the eased
139
+ * progress in 0..1 — already direction-flipped for yoyo cycles.
140
+ */
93
141
  onUpdate(callback) {
94
142
  this._onUpdate = callback;
95
143
  return this;
96
144
  }
145
+ /**
146
+ * Register a callback fired when the tween finishes naturally (all repeat
147
+ * cycles exhausted). Does NOT fire when the tween is stopped via
148
+ * {@link Tween.stop}.
149
+ */
97
150
  onComplete(callback) {
98
151
  this._onComplete = callback;
99
152
  return this;
100
153
  }
154
+ /**
155
+ * Register a callback fired at the boundary of each repeat cycle, after
156
+ * the cycle counter is decremented and before the next cycle begins. Not
157
+ * fired on the final cycle's completion (use {@link Tween.onComplete}
158
+ * for that).
159
+ */
101
160
  onRepeat(callback) {
102
161
  this._onRepeat = callback;
103
162
  return this;
@@ -1 +1 @@
1
- {"version":3,"file":"Tween.js","sources":["../../../../src/animation/Tween.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tween.js","sources":["../../../../src/animation/Tween.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,4 +1,14 @@
1
1
  import { Tween } from './Tween';
2
+ /**
3
+ * Owns and advances a collection of {@link Tween} instances, driving them
4
+ * once per frame from {@link Application.update}. Created tweens are tracked
5
+ * automatically; manually constructed tweens can be opted in via
6
+ * {@link TweenManager.add}.
7
+ *
8
+ * Update iteration uses a snapshot so callbacks may freely add or remove
9
+ * tweens during the same frame without corrupting the loop. Completed and
10
+ * stopped tweens are evicted automatically.
11
+ */
2
12
  export declare class TweenManager {
3
13
  private _tweens;
4
14
  private _destroyed;
@@ -1,5 +1,15 @@
1
1
  import { Tween } from './Tween.js';
2
2
 
3
+ /**
4
+ * Owns and advances a collection of {@link Tween} instances, driving them
5
+ * once per frame from {@link Application.update}. Created tweens are tracked
6
+ * automatically; manually constructed tweens can be opted in via
7
+ * {@link TweenManager.add}.
8
+ *
9
+ * Update iteration uses a snapshot so callbacks may freely add or remove
10
+ * tweens during the same frame without corrupting the loop. Completed and
11
+ * stopped tweens are evicted automatically.
12
+ */
3
13
  class TweenManager {
4
14
  _tweens = [];
5
15
  _destroyed = false;
@@ -1 +1 @@
1
- {"version":3,"file":"TweenManager.js","sources":["../../../../src/animation/TweenManager.ts"],"sourcesContent":[null],"names":[],"mappings":";;MAEa,YAAY,CAAA;IACb,OAAO,GAAiB,EAAE;IAC1B,UAAU,GAAG,KAAK;AAE1B;;;AAGG;AACI,IAAA,MAAM,CAAmB,MAAS,EAAA;AACrC,QAAA,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC;AAC/B,QAAA,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC;AAC1B,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAc,CAAC;AAEjC,QAAA,OAAO,KAAK;IAChB;AAEA;;;AAGG;AACI,IAAA,GAAG,CAAC,KAAY,EAAA;AACnB,QAAA,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC;QAE1B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;AAC/B,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAC5B;AAEA,QAAA,OAAO,IAAI;IACf;;AAGO,IAAA,MAAM,CAAC,KAAY,EAAA;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;AAEzC,QAAA,IAAI,KAAK,KAAK,EAAE,EAAE;YACd,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACjC;AAEA,QAAA,OAAO,IAAI;IACf;AAEA;;;;AAIG;AACI,IAAA,MAAM,CAAC,YAAoB,EAAA;QAC9B,IAAI,IAAI,CAAC,UAAU;AAAE,YAAA,OAAO,IAAI;QAEhC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;AAErC,QAAA,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;AAC1B,YAAA,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC;QAC9B;AAEA,QAAA,OAAO,IAAI;IACf;AAEA;;;AAGG;IACI,KAAK,GAAA;AACR,QAAA,IAAI,CAAC,OAAO,GAAG,EAAE;AAEjB,QAAA,OAAO,IAAI;IACf;;IAGO,OAAO,GAAA;QACV,IAAI,CAAC,KAAK,EAAE;AACZ,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI;IAC1B;AACH;;;;"}
1
+ {"version":3,"file":"TweenManager.js","sources":["../../../../src/animation/TweenManager.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAEA;;;;;;;;;AASG;MACU,YAAY,CAAA;IACb,OAAO,GAAiB,EAAE;IAC1B,UAAU,GAAG,KAAK;AAE1B;;;AAGG;AACI,IAAA,MAAM,CAAmB,MAAS,EAAA;AACrC,QAAA,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC;AAC/B,QAAA,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC;AAC1B,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAc,CAAC;AAEjC,QAAA,OAAO,KAAK;IAChB;AAEA;;;AAGG;AACI,IAAA,GAAG,CAAC,KAAY,EAAA;AACnB,QAAA,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC;QAE1B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;AAC/B,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAC5B;AAEA,QAAA,OAAO,IAAI;IACf;;AAGO,IAAA,MAAM,CAAC,KAAY,EAAA;QACtB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;AAEzC,QAAA,IAAI,KAAK,KAAK,EAAE,EAAE;YACd,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACjC;AAEA,QAAA,OAAO,IAAI;IACf;AAEA;;;;AAIG;AACI,IAAA,MAAM,CAAC,YAAoB,EAAA;QAC9B,IAAI,IAAI,CAAC,UAAU;AAAE,YAAA,OAAO,IAAI;QAEhC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;AAErC,QAAA,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE;AAC1B,YAAA,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC;QAC9B;AAEA,QAAA,OAAO,IAAI;IACf;AAEA;;;AAGG;IACI,KAAK,GAAA;AACR,QAAA,IAAI,CAAC,OAAO,GAAG,EAAE;AAEjB,QAAA,OAAO,IAAI;IACf;;IAGO,OAAO,GAAA;QACV,IAAI,CAAC,KAAK,EAAE;AACZ,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI;IAC1B;AACH;;;;"}
@@ -1,4 +1,10 @@
1
1
  export type { EasingFunction } from './Easing';
2
+ /**
3
+ * Lifecycle states of a {@link Tween}. A tween starts in `Idle`, transitions
4
+ * to `Active` once {@link Tween.start} is called, and ends in `Complete`
5
+ * (natural finish, all repeats exhausted) or `Stopped` (cancelled via
6
+ * {@link Tween.stop}). `Paused` is reachable from `Active` only.
7
+ */
2
8
  export declare enum TweenState {
3
9
  Idle = "idle",
4
10
  Active = "active",
@@ -6,5 +12,14 @@ export declare enum TweenState {
6
12
  Complete = "complete",
7
13
  Stopped = "stopped"
8
14
  }
15
+ /**
16
+ * Callback fired at one of the tween lifecycle points (start, complete,
17
+ * each repeat cycle). No arguments — use a closure to access related state.
18
+ */
9
19
  export type TweenLifecycleCallback = () => void;
20
+ /**
21
+ * Callback fired on every update during the active phase of a tween.
22
+ * Receives the eased progress in 0..1, after applying the easing function and
23
+ * accounting for yoyo direction.
24
+ */
10
25
  export type TweenUpdateCallback = (progress: number) => void;
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Lifecycle states of a {@link Tween}. A tween starts in `Idle`, transitions
3
+ * to `Active` once {@link Tween.start} is called, and ends in `Complete`
4
+ * (natural finish, all repeats exhausted) or `Stopped` (cancelled via
5
+ * {@link Tween.stop}). `Paused` is reachable from `Active` only.
6
+ */
1
7
  var TweenState;
2
8
  (function (TweenState) {
3
9
  TweenState["Idle"] = "idle";
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../src/animation/types.ts"],"sourcesContent":[null],"names":[],"mappings":"IAEY;AAAZ,CAAA,UAAY,UAAU,EAAA;AAClB,IAAA,UAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,UAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,UAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,UAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,UAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACvB,CAAC,EANW,UAAU,KAAV,UAAU,GAAA,EAAA,CAAA,CAAA;;;;"}
1
+ {"version":3,"file":"types.js","sources":["../../../../src/animation/types.ts"],"sourcesContent":[null],"names":[],"mappings":"AAEA;;;;;AAKG;IACS;AAAZ,CAAA,UAAY,UAAU,EAAA;AAClB,IAAA,UAAA,CAAA,MAAA,CAAA,GAAA,MAAa;AACb,IAAA,UAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,UAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,UAAA,CAAA,UAAA,CAAA,GAAA,UAAqB;AACrB,IAAA,UAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACvB,CAAC,EANW,UAAU,KAAV,UAAU,GAAA,EAAA,CAAA,CAAA;;;;"}
@@ -2,9 +2,20 @@ import type { Media } from '@/audio/Media';
2
2
  import { Signal } from '@/core/Signal';
3
3
  import type { PlaybackOptions } from '@/core/types';
4
4
  import type { AudioBus } from '@/audio/AudioBus';
5
+ /** Initial state passed to the {@link AbstractMedia} constructor by subclasses. */
5
6
  export interface AbstractMediaInitialState extends Omit<PlaybackOptions, 'time'> {
6
7
  duration: number;
7
8
  }
9
+ /**
10
+ * Shared base for {@link Sound} and {@link Music}: holds playback
11
+ * primitives (volume, loop, playbackRate, muted, currentTime), the
12
+ * {@link AudioBus} routing slot, lifecycle Signals (`onStart`, `onStop`),
13
+ * and ramp helpers ({@link AbstractMedia.fadeIn}, {@link AbstractMedia.fadeOut})
14
+ * that operate on whatever `GainNode` the subclass exposes.
15
+ *
16
+ * Subclasses implement the abstract members to bind to either an
17
+ * `AudioBufferSourceNode` (Sound) or `MediaElementAudioSourceNode` (Music).
18
+ */
8
19
  export declare abstract class AbstractMedia implements Media {
9
20
  readonly onStart: Signal<[]>;
10
21
  readonly onStop: Signal<[]>;
@@ -1,5 +1,15 @@
1
1
  import { Signal } from '../core/Signal.js';
2
2
 
3
+ /**
4
+ * Shared base for {@link Sound} and {@link Music}: holds playback
5
+ * primitives (volume, loop, playbackRate, muted, currentTime), the
6
+ * {@link AudioBus} routing slot, lifecycle Signals (`onStart`, `onStop`),
7
+ * and ramp helpers ({@link AbstractMedia.fadeIn}, {@link AbstractMedia.fadeOut})
8
+ * that operate on whatever `GainNode` the subclass exposes.
9
+ *
10
+ * Subclasses implement the abstract members to bind to either an
11
+ * `AudioBufferSourceNode` (Sound) or `MediaElementAudioSourceNode` (Music).
12
+ */
3
13
  class AbstractMedia {
4
14
  onStart = new Signal();
5
15
  onStop = new Signal();
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractMedia.js","sources":["../../../../src/audio/AbstractMedia.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractMedia.js","sources":["../../../../src/audio/AbstractMedia.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -2,10 +2,15 @@ import type { AudioBus } from '@/audio/AudioBus';
2
2
  import type { Sound } from '@/audio/Sound';
3
3
  import type { Music } from '@/audio/Music';
4
4
  export type AudioAnalyserSource = AudioBus | Sound | Music | MediaStream | AudioNode | null;
5
+ /** Construction options for {@link AudioAnalyser}. */
5
6
  export interface AudioAnalyserOptions {
7
+ /** FFT window size; must be a power of two between 32 and 32768. Default 2048. */
6
8
  fftSize?: number;
9
+ /** Time-domain smoothing constant in 0..1 applied between successive analyses. Default 0.8. */
7
10
  smoothingTimeConstant?: number;
11
+ /** Minimum dBFS rendered by the byte-domain spectrum getters. Default -100. */
8
12
  minDecibels?: number;
13
+ /** Maximum dBFS rendered by the byte-domain spectrum getters. Default -30. */
9
14
  maxDecibels?: number;
10
15
  }
11
16
  /**
@@ -27,10 +32,21 @@ export declare class AudioAnalyser {
27
32
  private _floatSpectrum;
28
33
  private _byteWaveform;
29
34
  private _floatWaveform;
35
+ /**
36
+ * Create an `AudioAnalyser` with the given options. The underlying
37
+ * `AnalyserNode` is created immediately if the `AudioContext` is already
38
+ * running, or deferred until {@link onAudioContextReady} fires.
39
+ */
30
40
  constructor(options?: AudioAnalyserOptions);
41
+ /**
42
+ * The currently tapped audio source, or `null` if none is set.
43
+ * Assigning a new value disconnects the previous tap and connects the new
44
+ * source as a parallel branch without affecting the source's main routing.
45
+ */
31
46
  get source(): AudioAnalyserSource;
32
47
  set source(value: AudioAnalyserSource);
33
48
  get fftSize(): number;
49
+ /** Number of frequency bins available — half of `fftSize`. */
34
50
  get frequencyBinCount(): number;
35
51
  get smoothingTimeConstant(): number;
36
52
  set smoothingTimeConstant(v: number);
@@ -59,6 +75,11 @@ export declare class AudioAnalyser {
59
75
  };
60
76
  /** Return overall RMS energy across all bins, normalised 0..1. */
61
77
  getRms(): number;
78
+ /**
79
+ * Disconnect the analyser tap, release the internal `AnalyserNode`, and
80
+ * cancel any pending setup callbacks. Call when the analyser is no longer
81
+ * needed to avoid memory leaks.
82
+ */
62
83
  destroy(): void;
63
84
  private _setupAnalyser;
64
85
  private _connectSource;
@@ -20,6 +20,11 @@ class AudioAnalyser {
20
20
  _floatSpectrum;
21
21
  _byteWaveform;
22
22
  _floatWaveform;
23
+ /**
24
+ * Create an `AudioAnalyser` with the given options. The underlying
25
+ * `AnalyserNode` is created immediately if the `AudioContext` is already
26
+ * running, or deferred until {@link onAudioContextReady} fires.
27
+ */
23
28
  constructor(options) {
24
29
  this._options = {
25
30
  fftSize: options?.fftSize ?? 2048,
@@ -42,6 +47,11 @@ class AudioAnalyser {
42
47
  // -----------------------------------------------------------------------
43
48
  // Source setter
44
49
  // -----------------------------------------------------------------------
50
+ /**
51
+ * The currently tapped audio source, or `null` if none is set.
52
+ * Assigning a new value disconnects the previous tap and connects the new
53
+ * source as a parallel branch without affecting the source's main routing.
54
+ */
45
55
  get source() {
46
56
  return this._source;
47
57
  }
@@ -71,6 +81,7 @@ class AudioAnalyser {
71
81
  get fftSize() {
72
82
  return this._options.fftSize;
73
83
  }
84
+ /** Number of frequency bins available — half of `fftSize`. */
74
85
  get frequencyBinCount() {
75
86
  return this._options.fftSize >> 1;
76
87
  }
@@ -189,6 +200,11 @@ class AudioAnalyser {
189
200
  // -----------------------------------------------------------------------
190
201
  // Lifecycle
191
202
  // -----------------------------------------------------------------------
203
+ /**
204
+ * Disconnect the analyser tap, release the internal `AnalyserNode`, and
205
+ * cancel any pending setup callbacks. Call when the analyser is no longer
206
+ * needed to avoid memory leaks.
207
+ */
192
208
  destroy() {
193
209
  onAudioContextReady.clearByContext(this);
194
210
  this._disconnectTap();
@@ -1 +1 @@
1
- {"version":3,"file":"AudioAnalyser.js","sources":["../../../../src/audio/AudioAnalyser.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AudioAnalyser.js","sources":["../../../../src/audio/AudioAnalyser.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}