@codexo/exojs 0.8.4 → 0.10.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.
Files changed (470) hide show
  1. package/CHANGELOG.md +99 -0
  2. package/README.md +34 -13
  3. package/dist/esm/animation/Tween.d.ts +20 -3
  4. package/dist/esm/animation/Tween.js +16 -8
  5. package/dist/esm/animation/Tween.js.map +1 -1
  6. package/dist/esm/animation/TweenManager.d.ts +16 -1
  7. package/dist/esm/animation/TweenManager.js +27 -2
  8. package/dist/esm/animation/TweenManager.js.map +1 -1
  9. package/dist/esm/audio/AudioAnalyser.d.ts +2 -0
  10. package/dist/esm/audio/AudioAnalyser.js +24 -9
  11. package/dist/esm/audio/AudioAnalyser.js.map +1 -1
  12. package/dist/esm/audio/AudioBus.d.ts +1 -0
  13. package/dist/esm/audio/AudioBus.js +8 -4
  14. package/dist/esm/audio/AudioBus.js.map +1 -1
  15. package/dist/esm/audio/AudioListener.d.ts +1 -0
  16. package/dist/esm/audio/AudioListener.js +7 -5
  17. package/dist/esm/audio/AudioListener.js.map +1 -1
  18. package/dist/esm/audio/AudioManager.d.ts +8 -2
  19. package/dist/esm/audio/AudioManager.js +14 -1
  20. package/dist/esm/audio/AudioManager.js.map +1 -1
  21. package/dist/esm/audio/BeatDetector.d.ts +2 -0
  22. package/dist/esm/audio/BeatDetector.js +27 -661
  23. package/dist/esm/audio/BeatDetector.js.map +1 -1
  24. package/dist/esm/audio/Music.d.ts +1 -0
  25. package/dist/esm/audio/Music.js +7 -3
  26. package/dist/esm/audio/Music.js.map +1 -1
  27. package/dist/esm/audio/OscillatorSound.d.ts +1 -0
  28. package/dist/esm/audio/OscillatorSound.js +7 -3
  29. package/dist/esm/audio/OscillatorSound.js.map +1 -1
  30. package/dist/esm/audio/Sound.d.ts +1 -0
  31. package/dist/esm/audio/Sound.js +7 -3
  32. package/dist/esm/audio/Sound.js.map +1 -1
  33. package/dist/esm/audio/audio-context.d.ts +2 -2
  34. package/dist/esm/audio/audio-context.js +4 -4
  35. package/dist/esm/audio/audio-context.js.map +1 -1
  36. package/dist/esm/audio/filters/ChorusFilter.d.ts +1 -0
  37. package/dist/esm/audio/filters/ChorusFilter.js +7 -3
  38. package/dist/esm/audio/filters/ChorusFilter.js.map +1 -1
  39. package/dist/esm/audio/filters/CompressorFilter.d.ts +1 -0
  40. package/dist/esm/audio/filters/CompressorFilter.js +7 -3
  41. package/dist/esm/audio/filters/CompressorFilter.js.map +1 -1
  42. package/dist/esm/audio/filters/DelayFilter.d.ts +1 -0
  43. package/dist/esm/audio/filters/DelayFilter.js +7 -3
  44. package/dist/esm/audio/filters/DelayFilter.js.map +1 -1
  45. package/dist/esm/audio/filters/EqualizerFilter.d.ts +1 -0
  46. package/dist/esm/audio/filters/EqualizerFilter.js +7 -3
  47. package/dist/esm/audio/filters/EqualizerFilter.js.map +1 -1
  48. package/dist/esm/audio/filters/GranularFilter.js +1 -86
  49. package/dist/esm/audio/filters/GranularFilter.js.map +1 -1
  50. package/dist/esm/audio/filters/HighpassFilter.d.ts +1 -0
  51. package/dist/esm/audio/filters/HighpassFilter.js +7 -3
  52. package/dist/esm/audio/filters/HighpassFilter.js.map +1 -1
  53. package/dist/esm/audio/filters/LowpassFilter.d.ts +1 -0
  54. package/dist/esm/audio/filters/LowpassFilter.js +7 -3
  55. package/dist/esm/audio/filters/LowpassFilter.js.map +1 -1
  56. package/dist/esm/audio/filters/PitchShiftFilter.js +1 -71
  57. package/dist/esm/audio/filters/PitchShiftFilter.js.map +1 -1
  58. package/dist/esm/audio/filters/ReverbFilter.d.ts +1 -0
  59. package/dist/esm/audio/filters/ReverbFilter.js +7 -3
  60. package/dist/esm/audio/filters/ReverbFilter.js.map +1 -1
  61. package/dist/esm/audio/filters/VocoderFilter.js +1 -89
  62. package/dist/esm/audio/filters/VocoderFilter.js.map +1 -1
  63. package/dist/esm/audio/filters/WorkletFilter.d.ts +2 -0
  64. package/dist/esm/audio/filters/WorkletFilter.js +10 -5
  65. package/dist/esm/audio/filters/WorkletFilter.js.map +1 -1
  66. package/dist/esm/audio/index.d.ts +15 -10
  67. package/dist/esm/audio/worklet/registerWorklet.d.ts +1 -1
  68. package/dist/esm/audio/worklet/registerWorklet.js +2 -2
  69. package/dist/esm/audio/worklet/registerWorklet.js.map +1 -1
  70. package/dist/esm/audio/worklets/beat-detector.worklet.d.ts +1 -0
  71. package/dist/esm/audio/worklets/beat-detector.worklet.js +647 -0
  72. package/dist/esm/audio/worklets/beat-detector.worklet.js.map +1 -0
  73. package/dist/esm/audio/worklets/granular.worklet.d.ts +1 -0
  74. package/dist/esm/audio/worklets/granular.worklet.js +89 -0
  75. package/dist/esm/audio/worklets/granular.worklet.js.map +1 -0
  76. package/dist/esm/audio/worklets/pitch-shift.worklet.d.ts +1 -0
  77. package/dist/esm/audio/worklets/pitch-shift.worklet.js +74 -0
  78. package/dist/esm/audio/worklets/pitch-shift.worklet.js.map +1 -0
  79. package/dist/esm/audio/worklets/vocoder.worklet.d.ts +1 -0
  80. package/dist/esm/audio/worklets/vocoder.worklet.js +92 -0
  81. package/dist/esm/audio/worklets/vocoder.worklet.js.map +1 -0
  82. package/dist/esm/core/Application.d.ts +86 -29
  83. package/dist/esm/core/Application.js +157 -47
  84. package/dist/esm/core/Application.js.map +1 -1
  85. package/dist/esm/core/Color.d.ts +0 -8
  86. package/dist/esm/core/Color.js +0 -24
  87. package/dist/esm/core/Color.js.map +1 -1
  88. package/dist/esm/core/Perf.d.ts +23 -0
  89. package/dist/esm/core/Perf.js +49 -0
  90. package/dist/esm/core/Perf.js.map +1 -0
  91. package/dist/esm/core/Scene.d.ts +40 -80
  92. package/dist/esm/core/Scene.js +63 -43
  93. package/dist/esm/core/Scene.js.map +1 -1
  94. package/dist/esm/core/SceneManager.d.ts +11 -25
  95. package/dist/esm/core/SceneManager.js +37 -100
  96. package/dist/esm/core/SceneManager.js.map +1 -1
  97. package/dist/esm/core/SceneNode.d.ts +28 -17
  98. package/dist/esm/core/SceneNode.js +66 -42
  99. package/dist/esm/core/SceneNode.js.map +1 -1
  100. package/dist/esm/core/Signal.d.ts +24 -28
  101. package/dist/esm/core/Signal.js +64 -50
  102. package/dist/esm/core/Signal.js.map +1 -1
  103. package/dist/esm/core/Timer.d.ts +1 -0
  104. package/dist/esm/core/Timer.js +3 -0
  105. package/dist/esm/core/Timer.js.map +1 -1
  106. package/dist/esm/core/capabilities.d.ts +2 -0
  107. package/dist/esm/core/capabilities.js +15 -0
  108. package/dist/esm/core/capabilities.js.map +1 -1
  109. package/dist/esm/core/index.d.ts +1 -0
  110. package/dist/esm/core/types.d.ts +1 -1
  111. package/dist/esm/core/utils.d.ts +12 -0
  112. package/dist/esm/core/utils.js +18 -1
  113. package/dist/esm/core/utils.js.map +1 -1
  114. package/dist/esm/debug/BoundingBoxesLayer.js +1 -1
  115. package/dist/esm/debug/BoundingBoxesLayer.js.map +1 -1
  116. package/dist/esm/debug/HitTestLayer.js +1 -1
  117. package/dist/esm/debug/HitTestLayer.js.map +1 -1
  118. package/dist/esm/debug/PerformanceLayer.js +1 -2
  119. package/dist/esm/debug/PerformanceLayer.js.map +1 -1
  120. package/dist/esm/debug/PointerStackLayer.js +1 -2
  121. package/dist/esm/debug/PointerStackLayer.js.map +1 -1
  122. package/dist/esm/debug/RenderPassInspectorLayer.js +1 -2
  123. package/dist/esm/debug/RenderPassInspectorLayer.js.map +1 -1
  124. package/dist/esm/index.js +37 -10
  125. package/dist/esm/index.js.map +1 -1
  126. package/dist/esm/input/InputManager.d.ts +1 -0
  127. package/dist/esm/input/InputManager.js +30 -3
  128. package/dist/esm/input/InputManager.js.map +1 -1
  129. package/dist/esm/input/InteractionManager.d.ts +5 -2
  130. package/dist/esm/input/InteractionManager.js +29 -18
  131. package/dist/esm/input/InteractionManager.js.map +1 -1
  132. package/dist/esm/input/Pointer.js +3 -2
  133. package/dist/esm/input/Pointer.js.map +1 -1
  134. package/dist/esm/input/internal/interactionManagerRegistry.d.ts +9 -0
  135. package/dist/esm/input/internal/interactionManagerRegistry.js +10 -0
  136. package/dist/esm/input/internal/interactionManagerRegistry.js.map +1 -0
  137. package/dist/esm/math/AbstractVector.d.ts +1 -7
  138. package/dist/esm/math/AbstractVector.js +6 -20
  139. package/dist/esm/math/AbstractVector.js.map +1 -1
  140. package/dist/esm/math/Circle.js +0 -2
  141. package/dist/esm/math/Circle.js.map +1 -1
  142. package/dist/esm/math/Collision.d.ts +9 -3
  143. package/dist/esm/math/Ellipse.d.ts +2 -5
  144. package/dist/esm/math/Ellipse.js +10 -7
  145. package/dist/esm/math/Ellipse.js.map +1 -1
  146. package/dist/esm/math/ObservableVector.d.ts +1 -1
  147. package/dist/esm/math/ObservableVector.js +3 -3
  148. package/dist/esm/math/ObservableVector.js.map +1 -1
  149. package/dist/esm/math/Polygon.d.ts +0 -2
  150. package/dist/esm/math/Polygon.js +1 -9
  151. package/dist/esm/math/Polygon.js.map +1 -1
  152. package/dist/esm/math/Rectangle.js +0 -2
  153. package/dist/esm/math/Rectangle.js.map +1 -1
  154. package/dist/esm/math/collision-detection.d.ts +19 -4
  155. package/dist/esm/math/collision-detection.js +61 -4
  156. package/dist/esm/math/collision-detection.js.map +1 -1
  157. package/dist/esm/math/swept-collision.d.ts +16 -12
  158. package/dist/esm/math/swept-collision.js +109 -19
  159. package/dist/esm/math/swept-collision.js.map +1 -1
  160. package/dist/esm/particles/ParticleSystem.d.ts +8 -5
  161. package/dist/esm/particles/ParticleSystem.js +10 -6
  162. package/dist/esm/particles/ParticleSystem.js.map +1 -1
  163. package/dist/esm/particles/distributions/{Gradient.d.ts → ColorGradient.d.ts} +5 -5
  164. package/dist/esm/particles/distributions/{Gradient.js → ColorGradient.js} +5 -5
  165. package/dist/esm/particles/distributions/ColorGradient.js.map +1 -0
  166. package/dist/esm/particles/distributions/Distribution.d.ts +2 -2
  167. package/dist/esm/particles/distributions/index.d.ts +2 -2
  168. package/dist/esm/particles/gpu/ParticleGpuState.js +1 -1
  169. package/dist/esm/particles/index.d.ts +1 -0
  170. package/dist/esm/particles/modules/ColorOverLifetime.d.ts +3 -3
  171. package/dist/esm/particles/modules/ColorOverLifetime.js.map +1 -1
  172. package/dist/esm/particles/modules/ColorOverSpeed.d.ts +3 -3
  173. package/dist/esm/particles/modules/ColorOverSpeed.js.map +1 -1
  174. package/dist/esm/particles/modules/UpdateModule.d.ts +2 -2
  175. package/dist/esm/particles/modules/UpdateModule.js +1 -1
  176. package/dist/esm/particles/modules/WgslContribution.d.ts +2 -2
  177. package/dist/esm/rendering/CallbackRenderPass.d.ts +1 -0
  178. package/dist/esm/rendering/CallbackRenderPass.js +1 -0
  179. package/dist/esm/rendering/CallbackRenderPass.js.map +1 -1
  180. package/dist/esm/rendering/Camera.d.ts +33 -0
  181. package/dist/esm/rendering/Camera.js +38 -0
  182. package/dist/esm/rendering/Camera.js.map +1 -0
  183. package/dist/esm/rendering/Container.d.ts +7 -25
  184. package/dist/esm/rendering/Container.js +25 -87
  185. package/dist/esm/rendering/Container.js.map +1 -1
  186. package/dist/esm/rendering/Drawable.d.ts +8 -10
  187. package/dist/esm/rendering/Drawable.js +12 -20
  188. package/dist/esm/rendering/Drawable.js.map +1 -1
  189. package/dist/esm/rendering/RenderBackend.d.ts +19 -0
  190. package/dist/esm/rendering/RenderNode.d.ts +82 -11
  191. package/dist/esm/rendering/RenderNode.js +133 -163
  192. package/dist/esm/rendering/RenderNode.js.map +1 -1
  193. package/dist/esm/rendering/RenderPass.d.ts +1 -0
  194. package/dist/esm/rendering/RenderStats.d.ts +9 -0
  195. package/dist/esm/rendering/RenderStats.js +2 -0
  196. package/dist/esm/rendering/RenderStats.js.map +1 -1
  197. package/dist/esm/rendering/RenderTarget.d.ts +13 -0
  198. package/dist/esm/rendering/RenderTarget.js +13 -0
  199. package/dist/esm/rendering/RenderTarget.js.map +1 -1
  200. package/dist/esm/rendering/RenderTargetPass.js +17 -0
  201. package/dist/esm/rendering/RenderTargetPass.js.map +1 -1
  202. package/dist/esm/rendering/RendererRegistry.d.ts +1 -0
  203. package/dist/esm/rendering/RendererRegistry.js +1 -0
  204. package/dist/esm/rendering/RendererRegistry.js.map +1 -1
  205. package/dist/esm/rendering/RenderingContext.d.ts +87 -0
  206. package/dist/esm/rendering/RenderingContext.js +157 -0
  207. package/dist/esm/rendering/RenderingContext.js.map +1 -0
  208. package/dist/esm/rendering/TransformBuffer.d.ts +38 -0
  209. package/dist/esm/rendering/TransformBuffer.js +116 -0
  210. package/dist/esm/rendering/TransformBuffer.js.map +1 -0
  211. package/dist/esm/rendering/View.d.ts +23 -0
  212. package/dist/esm/rendering/View.js +42 -0
  213. package/dist/esm/rendering/View.js.map +1 -1
  214. package/dist/esm/rendering/filters/WebGpuShaderFilter.js +5 -12
  215. package/dist/esm/rendering/filters/WebGpuShaderFilter.js.map +1 -1
  216. package/dist/esm/rendering/geometry/Geometry.d.ts +40 -0
  217. package/dist/esm/rendering/geometry/Geometry.js +228 -0
  218. package/dist/esm/rendering/geometry/Geometry.js.map +1 -0
  219. package/dist/esm/rendering/geometry/GeometryAttribute.d.ts +32 -0
  220. package/dist/esm/rendering/geometry/QuadGeometry.d.ts +5 -0
  221. package/dist/esm/rendering/gradient/Gradient.d.ts +34 -0
  222. package/dist/esm/rendering/gradient/Gradient.js +114 -0
  223. package/dist/esm/rendering/gradient/Gradient.js.map +1 -0
  224. package/dist/esm/rendering/gradient/LinearGradient.d.ts +10 -0
  225. package/dist/esm/rendering/gradient/LinearGradient.js +26 -0
  226. package/dist/esm/rendering/gradient/LinearGradient.js.map +1 -0
  227. package/dist/esm/rendering/gradient/RadialGradient.d.ts +10 -0
  228. package/dist/esm/rendering/gradient/RadialGradient.js +25 -0
  229. package/dist/esm/rendering/gradient/RadialGradient.js.map +1 -0
  230. package/dist/esm/rendering/index.d.ts +103 -59
  231. package/dist/esm/rendering/material/Material.d.ts +114 -0
  232. package/dist/esm/rendering/material/Material.js +111 -0
  233. package/dist/esm/rendering/material/Material.js.map +1 -0
  234. package/dist/esm/rendering/material/MaterialKey.d.ts +18 -0
  235. package/dist/esm/rendering/material/MaterialKey.js +82 -0
  236. package/dist/esm/rendering/material/MaterialKey.js.map +1 -0
  237. package/dist/esm/rendering/material/MeshMaterial.d.ts +16 -0
  238. package/dist/esm/rendering/material/MeshMaterial.js +21 -0
  239. package/dist/esm/rendering/material/MeshMaterial.js.map +1 -0
  240. package/dist/esm/rendering/{mesh/MeshShader.d.ts → material/ShaderSource.d.ts} +30 -62
  241. package/dist/esm/rendering/{mesh/MeshShader.js → material/ShaderSource.js} +36 -62
  242. package/dist/esm/rendering/material/ShaderSource.js.map +1 -0
  243. package/dist/esm/rendering/material/SpriteMaterial.d.ts +15 -0
  244. package/dist/esm/rendering/material/SpriteMaterial.js +20 -0
  245. package/dist/esm/rendering/material/SpriteMaterial.js.map +1 -0
  246. package/dist/esm/rendering/mesh/Mesh.d.ts +29 -12
  247. package/dist/esm/rendering/mesh/Mesh.js +123 -4
  248. package/dist/esm/rendering/mesh/Mesh.js.map +1 -1
  249. package/dist/esm/rendering/pass/RenderPassCoordinator.d.ts +63 -0
  250. package/dist/esm/rendering/pass/RenderPassDescriptor.d.ts +48 -0
  251. package/dist/esm/rendering/pass/RenderPassDescriptor.js +16 -0
  252. package/dist/esm/rendering/pass/RenderPassDescriptor.js.map +1 -0
  253. package/dist/esm/rendering/plan/RenderCommand.d.ts +67 -0
  254. package/dist/esm/rendering/plan/RenderCommand.js +94 -0
  255. package/dist/esm/rendering/plan/RenderCommand.js.map +1 -0
  256. package/dist/esm/rendering/plan/RenderEffectExecutor.d.ts +10 -0
  257. package/dist/esm/rendering/plan/RenderEffectExecutor.js +159 -0
  258. package/dist/esm/rendering/plan/RenderEffectExecutor.js.map +1 -0
  259. package/dist/esm/rendering/plan/RenderPlan.d.ts +23 -0
  260. package/dist/esm/rendering/plan/RenderPlan.js +12 -0
  261. package/dist/esm/rendering/plan/RenderPlan.js.map +1 -0
  262. package/dist/esm/rendering/plan/RenderPlanBuilder.d.ts +31 -0
  263. package/dist/esm/rendering/plan/RenderPlanBuilder.js +242 -0
  264. package/dist/esm/rendering/plan/RenderPlanBuilder.js.map +1 -0
  265. package/dist/esm/rendering/plan/RenderPlanOptimizer.d.ts +10 -0
  266. package/dist/esm/rendering/plan/RenderPlanOptimizer.js +180 -0
  267. package/dist/esm/rendering/plan/RenderPlanOptimizer.js.map +1 -0
  268. package/dist/esm/rendering/plan/RenderPlanPlayer.d.ts +9 -0
  269. package/dist/esm/rendering/plan/RenderPlanPlayer.js +56 -0
  270. package/dist/esm/rendering/plan/RenderPlanPlayer.js.map +1 -0
  271. package/dist/esm/rendering/plan/RenderScope.d.ts +70 -0
  272. package/dist/esm/rendering/plan/RenderScope.js +16 -0
  273. package/dist/esm/rendering/plan/RenderScope.js.map +1 -0
  274. package/dist/esm/rendering/plan/playRenderTree.d.ts +4 -0
  275. package/dist/esm/rendering/plan/playRenderTree.js +19 -0
  276. package/dist/esm/rendering/plan/playRenderTree.js.map +1 -0
  277. package/dist/esm/rendering/shader/Shader.d.ts +1 -0
  278. package/dist/esm/rendering/shader/Shader.js +1 -0
  279. package/dist/esm/rendering/shader/Shader.js.map +1 -1
  280. package/dist/esm/rendering/shader/ShaderUniform.d.ts +1 -0
  281. package/dist/esm/rendering/shader/ShaderUniform.js +1 -0
  282. package/dist/esm/rendering/shader/ShaderUniform.js.map +1 -1
  283. package/dist/esm/rendering/sprite/Sprite.d.ts +25 -3
  284. package/dist/esm/rendering/sprite/Sprite.js +48 -15
  285. package/dist/esm/rendering/sprite/Sprite.js.map +1 -1
  286. package/dist/esm/rendering/sprite/spriteMaterialSources.d.ts +36 -0
  287. package/dist/esm/rendering/sprite/spriteMaterialSources.js +128 -0
  288. package/dist/esm/rendering/sprite/spriteMaterialSources.js.map +1 -0
  289. package/dist/esm/rendering/text/AbstractText.d.ts +36 -0
  290. package/dist/esm/rendering/text/AbstractText.js +49 -0
  291. package/dist/esm/rendering/text/AbstractText.js.map +1 -0
  292. package/dist/esm/rendering/text/BitmapText.d.ts +97 -0
  293. package/dist/esm/rendering/text/BitmapText.js +220 -0
  294. package/dist/esm/rendering/text/BitmapText.js.map +1 -0
  295. package/dist/esm/rendering/text/BmFont.d.ts +50 -0
  296. package/dist/esm/rendering/text/BmFont.js +24 -0
  297. package/dist/esm/rendering/text/BmFont.js.map +1 -0
  298. package/dist/esm/rendering/text/GlyphAtlas.d.ts +104 -0
  299. package/dist/esm/rendering/text/GlyphAtlas.js +347 -0
  300. package/dist/esm/rendering/text/GlyphAtlas.js.map +1 -0
  301. package/dist/esm/rendering/text/GlyphAtlasPool.d.ts +40 -0
  302. package/dist/esm/rendering/text/GlyphAtlasPool.js +67 -0
  303. package/dist/esm/rendering/text/GlyphAtlasPool.js.map +1 -0
  304. package/dist/esm/rendering/text/GlyphSdf.d.ts +92 -0
  305. package/dist/esm/rendering/text/GlyphSdf.js +220 -0
  306. package/dist/esm/rendering/text/GlyphSdf.js.map +1 -0
  307. package/dist/esm/rendering/text/HTMLText.d.ts +107 -0
  308. package/dist/esm/rendering/text/HTMLText.js +284 -0
  309. package/dist/esm/rendering/text/HTMLText.js.map +1 -0
  310. package/dist/esm/rendering/text/LayoutOptions.d.ts +30 -0
  311. package/dist/esm/rendering/text/Text.d.ts +89 -20
  312. package/dist/esm/rendering/text/Text.js +176 -101
  313. package/dist/esm/rendering/text/Text.js.map +1 -1
  314. package/dist/esm/rendering/text/TextLayout.d.ts +20 -8
  315. package/dist/esm/rendering/text/TextLayout.js +234 -25
  316. package/dist/esm/rendering/text/TextLayout.js.map +1 -1
  317. package/dist/esm/rendering/text/TextStyle.d.ts +154 -87
  318. package/dist/esm/rendering/text/TextStyle.js +257 -203
  319. package/dist/esm/rendering/text/TextStyle.js.map +1 -1
  320. package/dist/esm/rendering/text/types.d.ts +73 -13
  321. package/dist/esm/rendering/texture/DataTexture.d.ts +5 -0
  322. package/dist/esm/rendering/texture/DataTexture.js +7 -0
  323. package/dist/esm/rendering/texture/DataTexture.js.map +1 -1
  324. package/dist/esm/rendering/texture/Texture.d.ts +1 -0
  325. package/dist/esm/rendering/texture/Texture.js +1 -0
  326. package/dist/esm/rendering/texture/Texture.js.map +1 -1
  327. package/dist/esm/rendering/types.d.ts +3 -1
  328. package/dist/esm/rendering/types.js +2 -0
  329. package/dist/esm/rendering/types.js.map +1 -1
  330. package/dist/esm/rendering/video/Video.d.ts +5 -8
  331. package/dist/esm/rendering/video/Video.js +12 -13
  332. package/dist/esm/rendering/video/Video.js.map +1 -1
  333. package/dist/esm/rendering/webgl2/WebGl2Backend.d.ts +40 -0
  334. package/dist/esm/rendering/webgl2/WebGl2Backend.js +344 -27
  335. package/dist/esm/rendering/webgl2/WebGl2Backend.js.map +1 -1
  336. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.d.ts +22 -2
  337. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js +404 -112
  338. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js.map +1 -1
  339. package/dist/esm/rendering/webgl2/WebGl2PassCoordinator.d.ts +57 -0
  340. package/dist/esm/rendering/webgl2/WebGl2PassCoordinator.js +79 -0
  341. package/dist/esm/rendering/webgl2/WebGl2PassCoordinator.js.map +1 -0
  342. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.d.ts +12 -0
  343. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js +214 -58
  344. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js.map +1 -1
  345. package/dist/esm/rendering/webgl2/WebGl2StencilClipper.d.ts +34 -0
  346. package/dist/esm/rendering/webgl2/WebGl2StencilClipper.js +169 -0
  347. package/dist/esm/rendering/webgl2/WebGl2StencilClipper.js.map +1 -0
  348. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.d.ts +56 -0
  349. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js +486 -0
  350. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js.map +1 -0
  351. package/dist/esm/rendering/webgl2/glsl/mesh.frag.js +1 -1
  352. package/dist/esm/rendering/webgl2/glsl/mesh.vert.js +1 -1
  353. package/dist/esm/rendering/webgl2/glsl/stencil-clip.frag.js +4 -0
  354. package/dist/esm/rendering/webgl2/glsl/stencil-clip.frag.js.map +1 -0
  355. package/dist/esm/rendering/webgl2/glsl/stencil-clip.vert.js +4 -0
  356. package/dist/esm/rendering/webgl2/glsl/stencil-clip.vert.js.map +1 -0
  357. package/dist/esm/rendering/webgl2/glsl/text-color.frag.js +4 -0
  358. package/dist/esm/rendering/webgl2/glsl/text-color.frag.js.map +1 -0
  359. package/dist/esm/rendering/webgl2/glsl/text-msdf.frag.js +4 -0
  360. package/dist/esm/rendering/webgl2/glsl/text-msdf.frag.js.map +1 -0
  361. package/dist/esm/rendering/webgl2/glsl/text-sdf.frag.js +4 -0
  362. package/dist/esm/rendering/webgl2/glsl/text-sdf.frag.js.map +1 -0
  363. package/dist/esm/rendering/webgl2/glsl/text.vert.js +4 -0
  364. package/dist/esm/rendering/webgl2/glsl/text.vert.js.map +1 -0
  365. package/dist/esm/rendering/webgpu/WebGpuBackend.d.ts +50 -0
  366. package/dist/esm/rendering/webgpu/WebGpuBackend.js +151 -27
  367. package/dist/esm/rendering/webgpu/WebGpuBackend.js.map +1 -1
  368. package/dist/esm/rendering/webgpu/WebGpuBlendState.js +26 -0
  369. package/dist/esm/rendering/webgpu/WebGpuBlendState.js.map +1 -1
  370. package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.js +22 -17
  371. package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.js.map +1 -1
  372. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.d.ts +26 -2
  373. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js +511 -89
  374. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js.map +1 -1
  375. package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js +13 -17
  376. package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js.map +1 -1
  377. package/dist/esm/rendering/webgpu/WebGpuPassCoordinator.d.ts +141 -0
  378. package/dist/esm/rendering/webgpu/WebGpuPassCoordinator.js +270 -0
  379. package/dist/esm/rendering/webgpu/WebGpuPassCoordinator.js.map +1 -0
  380. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.d.ts +16 -0
  381. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js +344 -27
  382. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js.map +1 -1
  383. package/dist/esm/rendering/webgpu/WebGpuStencilClipper.d.ts +57 -0
  384. package/dist/esm/rendering/webgpu/WebGpuStencilClipper.js +257 -0
  385. package/dist/esm/rendering/webgpu/WebGpuStencilClipper.js.map +1 -0
  386. package/dist/esm/rendering/webgpu/WebGpuStencilState.d.ts +14 -0
  387. package/dist/esm/rendering/webgpu/WebGpuStencilState.js +36 -0
  388. package/dist/esm/rendering/webgpu/WebGpuStencilState.js.map +1 -0
  389. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.d.ts +70 -0
  390. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js +775 -0
  391. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js.map +1 -0
  392. package/dist/esm/rendering/webgpu/WebGpuTransformStorage.d.ts +16 -0
  393. package/dist/esm/rendering/webgpu/WebGpuTransformStorage.js +57 -0
  394. package/dist/esm/rendering/webgpu/WebGpuTransformStorage.js.map +1 -0
  395. package/dist/esm/rendering/webgpu/compute/WebGpuComputePipeline.js +96 -0
  396. package/dist/esm/rendering/webgpu/compute/WebGpuComputePipeline.js.map +1 -0
  397. package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.js +68 -0
  398. package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.js.map +1 -0
  399. package/dist/esm/resources/Asset.d.ts +23 -0
  400. package/dist/esm/resources/Asset.js +23 -0
  401. package/dist/esm/resources/Asset.js.map +1 -0
  402. package/dist/esm/resources/AssetDefinitions.d.ts +137 -0
  403. package/dist/esm/resources/Assets.d.ts +35 -0
  404. package/dist/esm/resources/Assets.js +32 -0
  405. package/dist/esm/resources/Assets.js.map +1 -0
  406. package/dist/esm/resources/IndexedDbDatabase.js +17 -1
  407. package/dist/esm/resources/IndexedDbDatabase.js.map +1 -1
  408. package/dist/esm/resources/IndexedDbStore.js +17 -1
  409. package/dist/esm/resources/IndexedDbStore.js.map +1 -1
  410. package/dist/esm/resources/JsonStore.d.ts +18 -0
  411. package/dist/esm/resources/JsonStore.js +62 -0
  412. package/dist/esm/resources/JsonStore.js.map +1 -0
  413. package/dist/esm/resources/Loader.d.ts +244 -18
  414. package/dist/esm/resources/Loader.js +456 -50
  415. package/dist/esm/resources/Loader.js.map +1 -1
  416. package/dist/esm/resources/LoadingQueue.d.ts +28 -0
  417. package/dist/esm/resources/LoadingQueue.js +59 -0
  418. package/dist/esm/resources/LoadingQueue.js.map +1 -0
  419. package/dist/esm/resources/factories/BmFontFactory.d.ts +25 -0
  420. package/dist/esm/resources/factories/BmFontFactory.js +96 -0
  421. package/dist/esm/resources/factories/BmFontFactory.js.map +1 -0
  422. package/dist/esm/resources/factories/CsvFactory.d.ts +35 -0
  423. package/dist/esm/resources/factories/CsvFactory.js +87 -0
  424. package/dist/esm/resources/factories/CsvFactory.js.map +1 -0
  425. package/dist/esm/resources/factories/ImageFactory.d.ts +14 -8
  426. package/dist/esm/resources/factories/ImageFactory.js +13 -6
  427. package/dist/esm/resources/factories/ImageFactory.js.map +1 -1
  428. package/dist/esm/resources/factories/MusicFactory.d.ts +8 -2
  429. package/dist/esm/resources/factories/MusicFactory.js +25 -14
  430. package/dist/esm/resources/factories/MusicFactory.js.map +1 -1
  431. package/dist/esm/resources/factories/SoundFactory.d.ts +2 -2
  432. package/dist/esm/resources/factories/SoundFactory.js.map +1 -1
  433. package/dist/esm/resources/factories/SubtitleFactory.d.ts +28 -0
  434. package/dist/esm/resources/factories/SubtitleFactory.js +203 -0
  435. package/dist/esm/resources/factories/SubtitleFactory.js.map +1 -0
  436. package/dist/esm/resources/factories/SvgFactory.d.ts +18 -1
  437. package/dist/esm/resources/factories/SvgFactory.js +21 -2
  438. package/dist/esm/resources/factories/SvgFactory.js.map +1 -1
  439. package/dist/esm/resources/factories/TextureFactory.d.ts +4 -4
  440. package/dist/esm/resources/factories/TextureFactory.js +8 -4
  441. package/dist/esm/resources/factories/TextureFactory.js.map +1 -1
  442. package/dist/esm/resources/factories/VideoFactory.d.ts +8 -2
  443. package/dist/esm/resources/factories/VideoFactory.js +27 -20
  444. package/dist/esm/resources/factories/VideoFactory.js.map +1 -1
  445. package/dist/esm/resources/factories/XmlFactory.d.ts +24 -0
  446. package/dist/esm/resources/factories/XmlFactory.js +37 -0
  447. package/dist/esm/resources/factories/XmlFactory.js.map +1 -0
  448. package/dist/esm/resources/index.d.ts +9 -1
  449. package/dist/esm/resources/tokens.d.ts +49 -3
  450. package/dist/esm/resources/tokens.js +50 -4
  451. package/dist/esm/resources/tokens.js.map +1 -1
  452. package/dist/exo.esm.js +15382 -8078
  453. package/dist/exo.esm.js.map +1 -1
  454. package/package.json +34 -16
  455. package/dist/esm/input/interaction-hooks.d.ts +0 -34
  456. package/dist/esm/input/interaction-hooks.js +0 -35
  457. package/dist/esm/input/interaction-hooks.js.map +0 -1
  458. package/dist/esm/particles/distributions/Gradient.js.map +0 -1
  459. package/dist/esm/rendering/mesh/MeshShader.js.map +0 -1
  460. package/dist/esm/rendering/text/DynamicGlyphAtlas.d.ts +0 -33
  461. package/dist/esm/rendering/text/DynamicGlyphAtlas.js +0 -134
  462. package/dist/esm/rendering/text/DynamicGlyphAtlas.js.map +0 -1
  463. package/dist/esm/rendering/text/atlas-singleton.d.ts +0 -7
  464. package/dist/esm/rendering/text/atlas-singleton.js +0 -17
  465. package/dist/esm/rendering/text/atlas-singleton.js.map +0 -1
  466. package/dist/esm/resources/factories/VttFactory.d.ts +0 -24
  467. package/dist/esm/resources/factories/VttFactory.js +0 -158
  468. package/dist/esm/resources/factories/VttFactory.js.map +0 -1
  469. package/dist/esm/vendor/webgl-debug.js +0 -1160
  470. package/dist/esm/vendor/webgl-debug.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Loader.js","sources":["../../../../src/resources/Loader.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Loader.js","sources":["../../../../src/resources/Loader.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { Signal } from '@/core/Signal';
2
+ export interface LoadingProgress {
3
+ readonly total: number;
4
+ readonly loaded: number;
5
+ readonly pending: number;
6
+ readonly failed: number;
7
+ }
8
+ /**
9
+ * An awaitable, progress-aware load operation.
10
+ *
11
+ * Implements `PromiseLike<T>` so it can be `await`ed directly and composed
12
+ * with `Promise.all([queue1, queue2])` without wrapping.
13
+ *
14
+ * Progress is updated as individual items complete via {@link _notifyItem}.
15
+ */
16
+ export declare class LoadingQueue<T> implements PromiseLike<T> {
17
+ readonly onProgress: Signal<[LoadingProgress]>;
18
+ private _progress;
19
+ private readonly _promise;
20
+ /** @internal */
21
+ constructor(promise: Promise<T>, count: number);
22
+ get progress(): LoadingProgress;
23
+ /** @internal Called by Loader after each item settles. */
24
+ _notifyItem(success: boolean): void;
25
+ then<Fulfilled = T, Rejected = never>(onfulfilled?: ((value: T) => Fulfilled | PromiseLike<Fulfilled>) | null, onrejected?: ((reason: unknown) => Rejected | PromiseLike<Rejected>) | null): Promise<Fulfilled | Rejected>;
26
+ catch<Caught = never>(onrejected?: ((reason: unknown) => Caught | PromiseLike<Caught>) | null): Promise<T | Caught>;
27
+ finally(onfinally?: (() => void) | null): Promise<T>;
28
+ }
@@ -0,0 +1,59 @@
1
+ import { Signal } from '../core/Signal.js';
2
+
3
+ // ---------------------------------------------------------------------------
4
+ // LoadingQueue
5
+ // ---------------------------------------------------------------------------
6
+ /**
7
+ * An awaitable, progress-aware load operation.
8
+ *
9
+ * Implements `PromiseLike<T>` so it can be `await`ed directly and composed
10
+ * with `Promise.all([queue1, queue2])` without wrapping.
11
+ *
12
+ * Progress is updated as individual items complete via {@link _notifyItem}.
13
+ */
14
+ class LoadingQueue {
15
+ onProgress;
16
+ _progress;
17
+ _promise;
18
+ /** @internal */
19
+ constructor(promise, count) {
20
+ this.onProgress = new Signal();
21
+ this._progress = {
22
+ total: count,
23
+ loaded: 0,
24
+ pending: count,
25
+ failed: 0,
26
+ };
27
+ this._promise = promise;
28
+ }
29
+ get progress() {
30
+ return this._progress;
31
+ }
32
+ /** @internal Called by Loader after each item settles. */
33
+ _notifyItem(success) {
34
+ const prev = this._progress;
35
+ const loaded = prev.loaded + (success ? 1 : 0);
36
+ const failed = prev.failed + (success ? 0 : 1);
37
+ const settled = loaded + failed;
38
+ this._progress = {
39
+ total: prev.total,
40
+ loaded,
41
+ pending: Math.max(0, prev.total - settled),
42
+ failed,
43
+ };
44
+ this.onProgress.dispatch(this._progress);
45
+ }
46
+ // PromiseLike<T>
47
+ then(onfulfilled, onrejected) {
48
+ return this._promise.then(onfulfilled, onrejected);
49
+ }
50
+ catch(onrejected) {
51
+ return this._promise.catch(onrejected);
52
+ }
53
+ finally(onfinally) {
54
+ return this._promise.finally(onfinally);
55
+ }
56
+ }
57
+
58
+ export { LoadingQueue };
59
+ //# sourceMappingURL=LoadingQueue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoadingQueue.js","sources":["../../../../src/resources/LoadingQueue.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAaA;AACA;AACA;AAEA;;;;;;;AAOG;MACU,YAAY,CAAA;AACP,IAAA,UAAU;AAElB,IAAA,SAAS;AACA,IAAA,QAAQ;;IAGzB,WAAA,CAAmB,OAAmB,EAAE,KAAa,EAAA;AACnD,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,MAAM,EAAqB;QACjD,IAAI,CAAC,SAAS,GAAG;AACf,YAAA,KAAK,EAAE,KAAK;AACZ,YAAA,MAAM,EAAE,CAAC;AACT,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,MAAM,EAAE,CAAC;SACV;AACD,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;IACzB;AAEA,IAAA,IAAW,QAAQ,GAAA;QACjB,OAAO,IAAI,CAAC,SAAS;IACvB;;AAGO,IAAA,WAAW,CAAC,OAAgB,EAAA;AACjC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS;AAC3B,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;AAC9C,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;AAC9C,QAAA,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM;QAE/B,IAAI,CAAC,SAAS,GAAG;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM;AACN,YAAA,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;YAC1C,MAAM;SACP;QAED,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;IAC1C;;IAGO,IAAI,CACT,WAAuE,EACvE,UAA2E,EAAA;QAE3E,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC;IACpD;AAEO,IAAA,KAAK,CAAiB,UAAuE,EAAA;QAClG,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC;IACxC;AAEO,IAAA,OAAO,CAAC,SAA+B,EAAA;QAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC;IACzC;AACD;;;;"}
@@ -0,0 +1,25 @@
1
+ import type { BmFontData } from '@/rendering/text/BmFont';
2
+ import { BmFont } from '@/rendering/text/BmFont';
3
+ import { AbstractAssetFactory } from '@/resources/AbstractAssetFactory';
4
+ import type { Loader } from '@/resources/Loader';
5
+ /**
6
+ * Parse an AngelCode BMFont `.fnt` text file and return structured
7
+ * {@link BmFontData}. Supports the `text` format; the binary and XML
8
+ * formats are not implemented.
9
+ */
10
+ export declare function parseBmFontText(text: string): BmFontData;
11
+ /**
12
+ * Factory that loads a {@link BmFont} bundle: parses the `.fnt` descriptor
13
+ * and loads all referenced page textures via the owning {@link Loader} so
14
+ * they benefit from the same caching and IDB strategy as other assets.
15
+ */
16
+ export declare class BmFontLoaderFactory extends AbstractAssetFactory<BmFont> {
17
+ readonly storageName = "bmfont";
18
+ private readonly _loader;
19
+ constructor(loader: Loader);
20
+ process(response: Response): Promise<{
21
+ text: string;
22
+ url: string;
23
+ }>;
24
+ create(source: unknown): Promise<BmFont>;
25
+ }
@@ -0,0 +1,96 @@
1
+ import { BmFont } from '../../rendering/text/BmFont.js';
2
+ import { Texture } from '../../rendering/texture/Texture.js';
3
+ import { AbstractAssetFactory } from '../AbstractAssetFactory.js';
4
+
5
+ // ── Parser helpers ────────────────────────────────────────────────────────────
6
+ function intVal(line, key) {
7
+ const match = line.match(new RegExp(`\\b${key}=(-?\\d+)`));
8
+ return match ? parseInt(match[1], 10) : 0;
9
+ }
10
+ function strVal(line, key) {
11
+ const match = line.match(new RegExp(`\\b${key}="([^"]*)"`));
12
+ if (match)
13
+ return match[1];
14
+ const bare = line.match(new RegExp(`\\b${key}=(\\S+)`));
15
+ return bare ? bare[1] : '';
16
+ }
17
+ /**
18
+ * Parse an AngelCode BMFont `.fnt` text file and return structured
19
+ * {@link BmFontData}. Supports the `text` format; the binary and XML
20
+ * formats are not implemented.
21
+ */
22
+ function parseBmFontText(text) {
23
+ const lines = text.split(/\r?\n/);
24
+ const pages = [];
25
+ const chars = new Map();
26
+ const kernings = new Map();
27
+ let lineHeight = 0;
28
+ let base = 0;
29
+ for (const raw of lines) {
30
+ const line = raw.trim();
31
+ if (line.length === 0)
32
+ continue;
33
+ const tag = line.split(/\s/)[0];
34
+ switch (tag) {
35
+ case 'common': {
36
+ lineHeight = intVal(line, 'lineHeight');
37
+ base = intVal(line, 'base');
38
+ break;
39
+ }
40
+ case 'page': {
41
+ const id = intVal(line, 'id');
42
+ const file = strVal(line, 'file');
43
+ pages[id] = file;
44
+ break;
45
+ }
46
+ case 'char': {
47
+ const id = intVal(line, 'id');
48
+ chars.set(id, {
49
+ x: intVal(line, 'x'),
50
+ y: intVal(line, 'y'),
51
+ width: intVal(line, 'width'),
52
+ height: intVal(line, 'height'),
53
+ xOffset: intVal(line, 'xoffset'),
54
+ yOffset: intVal(line, 'yoffset'),
55
+ xAdvance: intVal(line, 'xadvance'),
56
+ page: intVal(line, 'page'),
57
+ });
58
+ break;
59
+ }
60
+ case 'kerning': {
61
+ const first = intVal(line, 'first');
62
+ const second = intVal(line, 'second');
63
+ const amount = intVal(line, 'amount');
64
+ kernings.set(`${first},${second}`, amount);
65
+ break;
66
+ }
67
+ }
68
+ }
69
+ return { pages, chars, kernings, lineHeight, base };
70
+ }
71
+ // ── Factory ───────────────────────────────────────────────────────────────────
72
+ /**
73
+ * Factory that loads a {@link BmFont} bundle: parses the `.fnt` descriptor
74
+ * and loads all referenced page textures via the owning {@link Loader} so
75
+ * they benefit from the same caching and IDB strategy as other assets.
76
+ */
77
+ class BmFontLoaderFactory extends AbstractAssetFactory {
78
+ storageName = 'bmfont';
79
+ _loader;
80
+ constructor(loader) {
81
+ super();
82
+ this._loader = loader;
83
+ }
84
+ async process(response) {
85
+ return { text: await response.text(), url: response.url };
86
+ }
87
+ async create(source) {
88
+ const { text, url } = source;
89
+ const fontData = parseBmFontText(text);
90
+ const textures = (await Promise.all(fontData.pages.map(page => this._loader.load(Texture, new URL(page, url).href))));
91
+ return new BmFont(fontData, textures);
92
+ }
93
+ }
94
+
95
+ export { BmFontLoaderFactory, parseBmFontText };
96
+ //# sourceMappingURL=BmFontFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BmFontFactory.js","sources":["../../../../../src/resources/factories/BmFontFactory.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { AbstractAssetFactory } from '@/resources/AbstractAssetFactory';
2
+ /** Construction options for {@link CsvFactory.create}. */
3
+ export interface CsvFactoryOptions {
4
+ /**
5
+ * Field delimiter character. Defaults to `','`.
6
+ * Use `'\t'` for TSV files or `';'` for locales that use semicolons.
7
+ */
8
+ delimiter?: string;
9
+ }
10
+ /**
11
+ * {@link AssetFactory} implementation that loads CSV (and TSV) files and
12
+ * produces a two-dimensional array of strings.
13
+ *
14
+ * Parsing is RFC 4180-compliant: quoted fields (including fields that contain
15
+ * the delimiter, newlines, or double-quotes) are handled correctly. Line
16
+ * endings are normalised before parsing; empty trailing lines are dropped.
17
+ *
18
+ * The returned `string[][]` is intentionally untyped — callers decide whether
19
+ * to treat the first row as headers, apply type coercions, etc.
20
+ */
21
+ export declare class CsvFactory extends AbstractAssetFactory<string[][]> {
22
+ readonly storageName = "csv";
23
+ /**
24
+ * Reads the response body as a UTF-8 string.
25
+ */
26
+ process(response: Response): Promise<string>;
27
+ /**
28
+ * Parses the CSV text into a two-dimensional array of strings.
29
+ *
30
+ * Each element of the outer array is one row; each element of an inner
31
+ * array is one field value with surrounding quotes stripped and escaped
32
+ * double-quotes (`""`) unescaped.
33
+ */
34
+ create(source: string, options?: CsvFactoryOptions): Promise<string[][]>;
35
+ }
@@ -0,0 +1,87 @@
1
+ import { AbstractAssetFactory } from '../AbstractAssetFactory.js';
2
+
3
+ /**
4
+ * {@link AssetFactory} implementation that loads CSV (and TSV) files and
5
+ * produces a two-dimensional array of strings.
6
+ *
7
+ * Parsing is RFC 4180-compliant: quoted fields (including fields that contain
8
+ * the delimiter, newlines, or double-quotes) are handled correctly. Line
9
+ * endings are normalised before parsing; empty trailing lines are dropped.
10
+ *
11
+ * The returned `string[][]` is intentionally untyped — callers decide whether
12
+ * to treat the first row as headers, apply type coercions, etc.
13
+ */
14
+ class CsvFactory extends AbstractAssetFactory {
15
+ storageName = 'csv';
16
+ /**
17
+ * Reads the response body as a UTF-8 string.
18
+ */
19
+ async process(response) {
20
+ return response.text();
21
+ }
22
+ /**
23
+ * Parses the CSV text into a two-dimensional array of strings.
24
+ *
25
+ * Each element of the outer array is one row; each element of an inner
26
+ * array is one field value with surrounding quotes stripped and escaped
27
+ * double-quotes (`""`) unescaped.
28
+ */
29
+ async create(source, options = {}) {
30
+ const delimiter = options.delimiter ?? ',';
31
+ const rows = [];
32
+ const text = source.replaceAll('\r\n', '\n').replaceAll('\r', '\n');
33
+ let row = [];
34
+ let field = '';
35
+ let inQuotes = false;
36
+ let i = 0;
37
+ while (i < text.length) {
38
+ const ch = text[i];
39
+ if (inQuotes) {
40
+ if (ch === '"') {
41
+ if (text[i + 1] === '"') {
42
+ field += '"';
43
+ i += 2;
44
+ }
45
+ else {
46
+ inQuotes = false;
47
+ i++;
48
+ }
49
+ }
50
+ else {
51
+ field += ch;
52
+ i++;
53
+ }
54
+ }
55
+ else {
56
+ if (ch === '"') {
57
+ inQuotes = true;
58
+ i++;
59
+ }
60
+ else if (ch === delimiter) {
61
+ row.push(field);
62
+ field = '';
63
+ i++;
64
+ }
65
+ else if (ch === '\n') {
66
+ row.push(field);
67
+ field = '';
68
+ rows.push(row);
69
+ row = [];
70
+ i++;
71
+ }
72
+ else {
73
+ field += ch;
74
+ i++;
75
+ }
76
+ }
77
+ }
78
+ row.push(field);
79
+ if (row.some(f => f !== '')) {
80
+ rows.push(row);
81
+ }
82
+ return rows;
83
+ }
84
+ }
85
+
86
+ export { CsvFactory };
87
+ //# sourceMappingURL=CsvFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CsvFactory.js","sources":["../../../../../src/resources/factories/CsvFactory.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAWA;;;;;;;;;;AAUG;AACG,MAAO,UAAW,SAAQ,oBAAgC,CAAA;IAC9C,WAAW,GAAG,KAAK;AAEnC;;AAEG;IACI,MAAM,OAAO,CAAC,QAAkB,EAAA;AACrC,QAAA,OAAO,QAAQ,CAAC,IAAI,EAAE;IACxB;AAEA;;;;;;AAMG;AACI,IAAA,MAAM,MAAM,CAAC,MAAc,EAAE,UAA6B,EAAE,EAAA;AACjE,QAAA,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,GAAG;QAC1C,MAAM,IAAI,GAAe,EAAE;AAC3B,QAAA,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC;QAEnE,IAAI,GAAG,GAAa,EAAE;QACtB,IAAI,KAAK,GAAG,EAAE;QACd,IAAI,QAAQ,GAAG,KAAK;QACpB,IAAI,CAAC,GAAG,CAAC;AAET,QAAA,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE;AACtB,YAAA,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;YAElB,IAAI,QAAQ,EAAE;AACZ,gBAAA,IAAI,EAAE,KAAK,GAAG,EAAE;oBACd,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;wBACvB,KAAK,IAAI,GAAG;wBACZ,CAAC,IAAI,CAAC;oBACR;yBAAO;wBACL,QAAQ,GAAG,KAAK;AAChB,wBAAA,CAAC,EAAE;oBACL;gBACF;qBAAO;oBACL,KAAK,IAAI,EAAE;AACX,oBAAA,CAAC,EAAE;gBACL;YACF;iBAAO;AACL,gBAAA,IAAI,EAAE,KAAK,GAAG,EAAE;oBACd,QAAQ,GAAG,IAAI;AACf,oBAAA,CAAC,EAAE;gBACL;AAAO,qBAAA,IAAI,EAAE,KAAK,SAAS,EAAE;AAC3B,oBAAA,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;oBACf,KAAK,GAAG,EAAE;AACV,oBAAA,CAAC,EAAE;gBACL;AAAO,qBAAA,IAAI,EAAE,KAAK,IAAI,EAAE;AACtB,oBAAA,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;oBACf,KAAK,GAAG,EAAE;AACV,oBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;oBACd,GAAG,GAAG,EAAE;AACR,oBAAA,CAAC,EAAE;gBACL;qBAAO;oBACL,KAAK,IAAI,EAAE;AACX,oBAAA,CAAC,EAAE;gBACL;YACF;QACF;AAEA,QAAA,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;AAEf,QAAA,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE;AAC3B,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QAChB;AAEA,QAAA,OAAO,IAAI;IACb;AACD;;;;"}
@@ -1,4 +1,6 @@
1
1
  import { AbstractAssetFactory } from '@/resources/AbstractAssetFactory';
2
+ /** Decoded image result from {@link ImageFactory.create}. */
3
+ export type DecodedImage = HTMLImageElement | ImageBitmap;
2
4
  /** Construction options for {@link ImageFactory.create}. */
3
5
  export interface ImageFactoryOptions {
4
6
  /**
@@ -10,13 +12,17 @@ export interface ImageFactoryOptions {
10
12
  }
11
13
  /**
12
14
  * {@link AssetFactory} implementation that loads PNG, JPG, WebP, AVIF, and
13
- * other browser-supported raster image formats and produces a decoded
14
- * {@link HTMLImageElement}.
15
+ * other browser-supported raster image formats and produces a decoded image.
16
+ *
17
+ * When `createImageBitmap` is available (all modern browsers) the factory
18
+ * returns an {@link ImageBitmap} — a zero-copy GPU-upload path that avoids
19
+ * the HTMLImageElement render-pipeline overhead. On older environments it
20
+ * falls back to an {@link HTMLImageElement}.
15
21
  *
16
22
  * MIME type detection is performed automatically from the buffer's magic bytes;
17
23
  * pass an explicit `mimeType` in options to override.
18
24
  */
19
- export declare class ImageFactory extends AbstractAssetFactory<HTMLImageElement> {
25
+ export declare class ImageFactory extends AbstractAssetFactory<DecodedImage> {
20
26
  readonly storageName = "image";
21
27
  /**
22
28
  * Reads the full response body as an {@link ArrayBuffer} for MIME-type
@@ -24,11 +30,11 @@ export declare class ImageFactory extends AbstractAssetFactory<HTMLImageElement>
24
30
  */
25
31
  process(response: Response): Promise<ArrayBuffer>;
26
32
  /**
27
- * Decodes image bytes into a fully loaded {@link HTMLImageElement}.
33
+ * Decodes image bytes into a {@link DecodedImage}.
28
34
  *
29
- * Creates a temporary object URL from the buffer, assigns it to an
30
- * `<img>` element, and revokes the URL once loading completes or fails.
31
- * Rejects if the browser reports a load error or the load is aborted.
35
+ * Prefers `createImageBitmap` for a zero-copy GPU-upload path. Falls back
36
+ * to a temporary object URL + `<img>` element on environments that do not
37
+ * support `createImageBitmap`.
32
38
  */
33
- create(source: ArrayBuffer, options?: ImageFactoryOptions): Promise<HTMLImageElement>;
39
+ create(source: ArrayBuffer, options?: ImageFactoryOptions): Promise<DecodedImage>;
34
40
  }
@@ -3,8 +3,12 @@ import { determineMimeType } from '../utils.js';
3
3
 
4
4
  /**
5
5
  * {@link AssetFactory} implementation that loads PNG, JPG, WebP, AVIF, and
6
- * other browser-supported raster image formats and produces a decoded
7
- * {@link HTMLImageElement}.
6
+ * other browser-supported raster image formats and produces a decoded image.
7
+ *
8
+ * When `createImageBitmap` is available (all modern browsers) the factory
9
+ * returns an {@link ImageBitmap} — a zero-copy GPU-upload path that avoids
10
+ * the HTMLImageElement render-pipeline overhead. On older environments it
11
+ * falls back to an {@link HTMLImageElement}.
8
12
  *
9
13
  * MIME type detection is performed automatically from the buffer's magic bytes;
10
14
  * pass an explicit `mimeType` in options to override.
@@ -19,14 +23,17 @@ class ImageFactory extends AbstractAssetFactory {
19
23
  return response.arrayBuffer();
20
24
  }
21
25
  /**
22
- * Decodes image bytes into a fully loaded {@link HTMLImageElement}.
26
+ * Decodes image bytes into a {@link DecodedImage}.
23
27
  *
24
- * Creates a temporary object URL from the buffer, assigns it to an
25
- * `<img>` element, and revokes the URL once loading completes or fails.
26
- * Rejects if the browser reports a load error or the load is aborted.
28
+ * Prefers `createImageBitmap` for a zero-copy GPU-upload path. Falls back
29
+ * to a temporary object URL + `<img>` element on environments that do not
30
+ * support `createImageBitmap`.
27
31
  */
28
32
  async create(source, options = {}) {
29
33
  const blob = new Blob([source], { type: options.mimeType ?? determineMimeType(source) });
34
+ if (typeof createImageBitmap === 'function') {
35
+ return createImageBitmap(blob);
36
+ }
30
37
  const objectUrl = this.createObjectUrl(blob);
31
38
  return new Promise((resolve, reject) => {
32
39
  const image = new Image();
@@ -1 +1 @@
1
- {"version":3,"file":"ImageFactory.js","sources":["../../../../../src/resources/factories/ImageFactory.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAaA;;;;;;;AAOG;AACG,MAAO,YAAa,SAAQ,oBAAsC,CAAA;IACtD,WAAW,GAAG,OAAO;AAErC;;;AAGG;IACI,MAAM,OAAO,CAAC,QAAkB,EAAA;AACrC,QAAA,OAAO,QAAQ,CAAC,WAAW,EAAE;IAC/B;AAEA;;;;;;AAMG;AACI,IAAA,MAAM,MAAM,CAAC,MAAmB,EAAE,UAA+B,EAAE,EAAA;QACxE,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QACxF,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;QAE5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,YAAA,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE;YACzB,MAAM,QAAQ,GAAG,MAAW;AAC1B,gBAAA,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;AACjC,YAAA,CAAC;AAED,YAAA,KAAK,CAAC,gBAAgB,CACpB,MAAM,EACN,MAAK;AACH,gBAAA,QAAQ,EAAE;gBACV,OAAO,CAAC,KAAK,CAAC;AAChB,YAAA,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf;AACD,YAAA,KAAK,CAAC,gBAAgB,CACpB,OAAO,EACP,MAAK;AACH,gBAAA,QAAQ,EAAE;AACV,gBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;AAClD,YAAA,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf;AACD,YAAA,KAAK,CAAC,gBAAgB,CACpB,OAAO,EACP,MAAK;AACH,gBAAA,QAAQ,EAAE;AACV,gBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;AAClD,YAAA,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf;AAED,YAAA,KAAK,CAAC,GAAG,GAAG,SAAS;AACvB,QAAA,CAAC,CAAC;IACJ;AACD;;;;"}
1
+ {"version":3,"file":"ImageFactory.js","sources":["../../../../../src/resources/factories/ImageFactory.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAgBA;;;;;;;;;;;AAWG;AACG,MAAO,YAAa,SAAQ,oBAAkC,CAAA;IAClD,WAAW,GAAG,OAAO;AAErC;;;AAGG;IACI,MAAM,OAAO,CAAC,QAAkB,EAAA;AACrC,QAAA,OAAO,QAAQ,CAAC,WAAW,EAAE;IAC/B;AAEA;;;;;;AAMG;AACI,IAAA,MAAM,MAAM,CAAC,MAAmB,EAAE,UAA+B,EAAE,EAAA;QACxE,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;AAExF,QAAA,IAAI,OAAO,iBAAiB,KAAK,UAAU,EAAE;AAC3C,YAAA,OAAO,iBAAiB,CAAC,IAAI,CAAC;QAChC;QAEA,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;QAE5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,YAAA,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE;YACzB,MAAM,QAAQ,GAAG,MAAW;AAC1B,gBAAA,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;AACjC,YAAA,CAAC;AAED,YAAA,KAAK,CAAC,gBAAgB,CACpB,MAAM,EACN,MAAK;AACH,gBAAA,QAAQ,EAAE;gBACV,OAAO,CAAC,KAAK,CAAC;AAChB,YAAA,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf;AACD,YAAA,KAAK,CAAC,gBAAgB,CACpB,OAAO,EACP,MAAK;AACH,gBAAA,QAAQ,EAAE;AACV,gBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;AAClD,YAAA,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf;AACD,YAAA,KAAK,CAAC,gBAAgB,CACpB,OAAO,EACP,MAAK;AACH,gBAAA,QAAQ,EAAE;AACV,gBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;AAClD,YAAA,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf;AAED,YAAA,KAAK,CAAC,GAAG,GAAG,SAAS;AACvB,QAAA,CAAC,CAAC;IACJ;AACD;;;;"}
@@ -1,7 +1,8 @@
1
1
  import { Music } from '@/audio/Music';
2
2
  import type { PlaybackOptions, StreamingLoadEvent } from '@/core/types';
3
3
  import { AbstractAssetFactory } from '@/resources/AbstractAssetFactory';
4
- interface MusicFactoryOptions {
4
+ /** Construction options for {@link MusicFactory.create}. */
5
+ export interface MusicFactoryOptions {
5
6
  /**
6
7
  * MIME type for the audio blob. Inferred from magic bytes when omitted.
7
8
  */
@@ -14,6 +15,12 @@ interface MusicFactoryOptions {
14
15
  loadEvent?: StreamingLoadEvent;
15
16
  /** Initial playback settings forwarded to the {@link Music} instance. */
16
17
  playbackOptions?: Partial<PlaybackOptions>;
18
+ /**
19
+ * Milliseconds to wait after a `stalled` event before rejecting the load
20
+ * promise. When omitted no timeout is applied and a stalled load will wait
21
+ * indefinitely. Each subsequent `stalled` event resets the timer.
22
+ */
23
+ stallTimeout?: number;
17
24
  }
18
25
  /**
19
26
  * {@link AssetFactory} implementation that loads streaming audio assets
@@ -49,4 +56,3 @@ export declare class MusicFactory extends AbstractAssetFactory<Music> {
49
56
  */
50
57
  destroy(): void;
51
58
  }
52
- export {};