@codexo/exojs 0.8.4 → 0.9.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 (317) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/README.md +26 -5
  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 +62 -24
  83. package/dist/esm/core/Application.js +116 -40
  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/Scene.d.ts +32 -72
  89. package/dist/esm/core/Scene.js +56 -36
  90. package/dist/esm/core/Scene.js.map +1 -1
  91. package/dist/esm/core/SceneManager.d.ts +11 -25
  92. package/dist/esm/core/SceneManager.js +37 -100
  93. package/dist/esm/core/SceneManager.js.map +1 -1
  94. package/dist/esm/core/SceneNode.d.ts +28 -14
  95. package/dist/esm/core/SceneNode.js +66 -33
  96. package/dist/esm/core/SceneNode.js.map +1 -1
  97. package/dist/esm/core/Signal.d.ts +24 -28
  98. package/dist/esm/core/Signal.js +64 -50
  99. package/dist/esm/core/Signal.js.map +1 -1
  100. package/dist/esm/core/Timer.d.ts +1 -0
  101. package/dist/esm/core/Timer.js +3 -0
  102. package/dist/esm/core/Timer.js.map +1 -1
  103. package/dist/esm/debug/BoundingBoxesLayer.js +1 -1
  104. package/dist/esm/debug/BoundingBoxesLayer.js.map +1 -1
  105. package/dist/esm/debug/HitTestLayer.js +1 -1
  106. package/dist/esm/debug/HitTestLayer.js.map +1 -1
  107. package/dist/esm/debug/PerformanceLayer.js +1 -2
  108. package/dist/esm/debug/PerformanceLayer.js.map +1 -1
  109. package/dist/esm/debug/PointerStackLayer.js +1 -2
  110. package/dist/esm/debug/PointerStackLayer.js.map +1 -1
  111. package/dist/esm/debug/RenderPassInspectorLayer.js +1 -2
  112. package/dist/esm/debug/RenderPassInspectorLayer.js.map +1 -1
  113. package/dist/esm/index.js +23 -7
  114. package/dist/esm/index.js.map +1 -1
  115. package/dist/esm/input/InputManager.d.ts +1 -0
  116. package/dist/esm/input/InputManager.js +30 -3
  117. package/dist/esm/input/InputManager.js.map +1 -1
  118. package/dist/esm/input/InteractionManager.d.ts +5 -2
  119. package/dist/esm/input/InteractionManager.js +29 -18
  120. package/dist/esm/input/InteractionManager.js.map +1 -1
  121. package/dist/esm/input/Pointer.js +3 -2
  122. package/dist/esm/input/Pointer.js.map +1 -1
  123. package/dist/esm/input/internal/interactionManagerRegistry.d.ts +9 -0
  124. package/dist/esm/input/internal/interactionManagerRegistry.js +10 -0
  125. package/dist/esm/input/internal/interactionManagerRegistry.js.map +1 -0
  126. package/dist/esm/math/AbstractVector.d.ts +1 -7
  127. package/dist/esm/math/AbstractVector.js +6 -20
  128. package/dist/esm/math/AbstractVector.js.map +1 -1
  129. package/dist/esm/math/Circle.js +0 -2
  130. package/dist/esm/math/Circle.js.map +1 -1
  131. package/dist/esm/math/Collision.d.ts +9 -3
  132. package/dist/esm/math/Ellipse.d.ts +2 -5
  133. package/dist/esm/math/Ellipse.js +10 -7
  134. package/dist/esm/math/Ellipse.js.map +1 -1
  135. package/dist/esm/math/ObservableVector.d.ts +1 -1
  136. package/dist/esm/math/ObservableVector.js +3 -3
  137. package/dist/esm/math/ObservableVector.js.map +1 -1
  138. package/dist/esm/math/Polygon.d.ts +0 -2
  139. package/dist/esm/math/Polygon.js +1 -9
  140. package/dist/esm/math/Polygon.js.map +1 -1
  141. package/dist/esm/math/Rectangle.js +0 -2
  142. package/dist/esm/math/Rectangle.js.map +1 -1
  143. package/dist/esm/math/collision-detection.d.ts +19 -4
  144. package/dist/esm/math/collision-detection.js +61 -4
  145. package/dist/esm/math/collision-detection.js.map +1 -1
  146. package/dist/esm/math/swept-collision.d.ts +16 -12
  147. package/dist/esm/math/swept-collision.js +109 -19
  148. package/dist/esm/math/swept-collision.js.map +1 -1
  149. package/dist/esm/particles/ParticleSystem.js +1 -1
  150. package/dist/esm/particles/ParticleSystem.js.map +1 -1
  151. package/dist/esm/particles/index.d.ts +1 -0
  152. package/dist/esm/rendering/CallbackRenderPass.d.ts +1 -0
  153. package/dist/esm/rendering/CallbackRenderPass.js +1 -0
  154. package/dist/esm/rendering/CallbackRenderPass.js.map +1 -1
  155. package/dist/esm/rendering/Container.d.ts +2 -1
  156. package/dist/esm/rendering/Container.js +17 -16
  157. package/dist/esm/rendering/Container.js.map +1 -1
  158. package/dist/esm/rendering/RenderBackend.d.ts +1 -0
  159. package/dist/esm/rendering/RenderNode.d.ts +1 -3
  160. package/dist/esm/rendering/RenderNode.js +12 -19
  161. package/dist/esm/rendering/RenderNode.js.map +1 -1
  162. package/dist/esm/rendering/RenderPass.d.ts +1 -0
  163. package/dist/esm/rendering/RenderStats.d.ts +9 -0
  164. package/dist/esm/rendering/RenderStats.js +2 -0
  165. package/dist/esm/rendering/RenderStats.js.map +1 -1
  166. package/dist/esm/rendering/RendererRegistry.d.ts +1 -0
  167. package/dist/esm/rendering/RendererRegistry.js +1 -0
  168. package/dist/esm/rendering/RendererRegistry.js.map +1 -1
  169. package/dist/esm/rendering/View.d.ts +23 -0
  170. package/dist/esm/rendering/View.js +42 -0
  171. package/dist/esm/rendering/View.js.map +1 -1
  172. package/dist/esm/rendering/index.d.ts +89 -59
  173. package/dist/esm/rendering/mesh/Mesh.js +1 -1
  174. package/dist/esm/rendering/mesh/Mesh.js.map +1 -1
  175. package/dist/esm/rendering/mesh/MeshShader.d.ts +1 -0
  176. package/dist/esm/rendering/mesh/MeshShader.js +1 -0
  177. package/dist/esm/rendering/mesh/MeshShader.js.map +1 -1
  178. package/dist/esm/rendering/shader/Shader.d.ts +1 -0
  179. package/dist/esm/rendering/shader/Shader.js +1 -0
  180. package/dist/esm/rendering/shader/Shader.js.map +1 -1
  181. package/dist/esm/rendering/shader/ShaderUniform.d.ts +1 -0
  182. package/dist/esm/rendering/shader/ShaderUniform.js +1 -0
  183. package/dist/esm/rendering/shader/ShaderUniform.js.map +1 -1
  184. package/dist/esm/rendering/sprite/Sprite.d.ts +3 -2
  185. package/dist/esm/rendering/sprite/Sprite.js +15 -13
  186. package/dist/esm/rendering/sprite/Sprite.js.map +1 -1
  187. package/dist/esm/rendering/text/AbstractText.d.ts +36 -0
  188. package/dist/esm/rendering/text/AbstractText.js +49 -0
  189. package/dist/esm/rendering/text/AbstractText.js.map +1 -0
  190. package/dist/esm/rendering/text/BitmapText.d.ts +97 -0
  191. package/dist/esm/rendering/text/BitmapText.js +220 -0
  192. package/dist/esm/rendering/text/BitmapText.js.map +1 -0
  193. package/dist/esm/rendering/text/BmFont.d.ts +50 -0
  194. package/dist/esm/rendering/text/BmFont.js +24 -0
  195. package/dist/esm/rendering/text/BmFont.js.map +1 -0
  196. package/dist/esm/rendering/text/GlyphAtlas.d.ts +104 -0
  197. package/dist/esm/rendering/text/GlyphAtlas.js +347 -0
  198. package/dist/esm/rendering/text/GlyphAtlas.js.map +1 -0
  199. package/dist/esm/rendering/text/GlyphAtlasPool.d.ts +40 -0
  200. package/dist/esm/rendering/text/GlyphAtlasPool.js +67 -0
  201. package/dist/esm/rendering/text/GlyphAtlasPool.js.map +1 -0
  202. package/dist/esm/rendering/text/GlyphSdf.d.ts +92 -0
  203. package/dist/esm/rendering/text/GlyphSdf.js +220 -0
  204. package/dist/esm/rendering/text/GlyphSdf.js.map +1 -0
  205. package/dist/esm/rendering/text/HTMLText.d.ts +107 -0
  206. package/dist/esm/rendering/text/HTMLText.js +284 -0
  207. package/dist/esm/rendering/text/HTMLText.js.map +1 -0
  208. package/dist/esm/rendering/text/LayoutOptions.d.ts +30 -0
  209. package/dist/esm/rendering/text/Text.d.ts +89 -20
  210. package/dist/esm/rendering/text/Text.js +176 -101
  211. package/dist/esm/rendering/text/Text.js.map +1 -1
  212. package/dist/esm/rendering/text/TextLayout.d.ts +20 -8
  213. package/dist/esm/rendering/text/TextLayout.js +234 -25
  214. package/dist/esm/rendering/text/TextLayout.js.map +1 -1
  215. package/dist/esm/rendering/text/TextStyle.d.ts +154 -87
  216. package/dist/esm/rendering/text/TextStyle.js +257 -203
  217. package/dist/esm/rendering/text/TextStyle.js.map +1 -1
  218. package/dist/esm/rendering/text/types.d.ts +73 -13
  219. package/dist/esm/rendering/texture/Texture.d.ts +1 -0
  220. package/dist/esm/rendering/texture/Texture.js +1 -0
  221. package/dist/esm/rendering/texture/Texture.js.map +1 -1
  222. package/dist/esm/rendering/types.d.ts +3 -1
  223. package/dist/esm/rendering/types.js +2 -0
  224. package/dist/esm/rendering/types.js.map +1 -1
  225. package/dist/esm/rendering/video/Video.d.ts +2 -1
  226. package/dist/esm/rendering/video/Video.js +9 -5
  227. package/dist/esm/rendering/video/Video.js.map +1 -1
  228. package/dist/esm/rendering/webgl2/WebGl2Backend.js +41 -5
  229. package/dist/esm/rendering/webgl2/WebGl2Backend.js.map +1 -1
  230. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js +4 -4
  231. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js.map +1 -1
  232. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.d.ts +56 -0
  233. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js +482 -0
  234. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js.map +1 -0
  235. package/dist/esm/rendering/webgl2/glsl/text-color.frag.js +4 -0
  236. package/dist/esm/rendering/webgl2/glsl/text-color.frag.js.map +1 -0
  237. package/dist/esm/rendering/webgl2/glsl/text-msdf.frag.js +4 -0
  238. package/dist/esm/rendering/webgl2/glsl/text-msdf.frag.js.map +1 -0
  239. package/dist/esm/rendering/webgl2/glsl/text-sdf.frag.js +4 -0
  240. package/dist/esm/rendering/webgl2/glsl/text-sdf.frag.js.map +1 -0
  241. package/dist/esm/rendering/webgl2/glsl/text.vert.js +4 -0
  242. package/dist/esm/rendering/webgl2/glsl/text.vert.js.map +1 -0
  243. package/dist/esm/rendering/webgpu/WebGpuBackend.js +16 -8
  244. package/dist/esm/rendering/webgpu/WebGpuBackend.js.map +1 -1
  245. package/dist/esm/rendering/webgpu/WebGpuBlendState.js +26 -0
  246. package/dist/esm/rendering/webgpu/WebGpuBlendState.js.map +1 -1
  247. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.d.ts +2 -2
  248. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js +23 -15
  249. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js.map +1 -1
  250. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js +9 -1
  251. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js.map +1 -1
  252. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.d.ts +70 -0
  253. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js +773 -0
  254. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js.map +1 -0
  255. package/dist/esm/rendering/webgpu/compute/WebGpuComputePipeline.js +96 -0
  256. package/dist/esm/rendering/webgpu/compute/WebGpuComputePipeline.js.map +1 -0
  257. package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.js +68 -0
  258. package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.js.map +1 -0
  259. package/dist/esm/resources/Asset.d.ts +23 -0
  260. package/dist/esm/resources/Asset.js +23 -0
  261. package/dist/esm/resources/Asset.js.map +1 -0
  262. package/dist/esm/resources/AssetDefinitions.d.ts +137 -0
  263. package/dist/esm/resources/Assets.d.ts +35 -0
  264. package/dist/esm/resources/Assets.js +32 -0
  265. package/dist/esm/resources/Assets.js.map +1 -0
  266. package/dist/esm/resources/IndexedDbDatabase.js +17 -1
  267. package/dist/esm/resources/IndexedDbDatabase.js.map +1 -1
  268. package/dist/esm/resources/IndexedDbStore.js +17 -1
  269. package/dist/esm/resources/IndexedDbStore.js.map +1 -1
  270. package/dist/esm/resources/Loader.d.ts +244 -18
  271. package/dist/esm/resources/Loader.js +456 -50
  272. package/dist/esm/resources/Loader.js.map +1 -1
  273. package/dist/esm/resources/LoadingQueue.d.ts +28 -0
  274. package/dist/esm/resources/LoadingQueue.js +59 -0
  275. package/dist/esm/resources/LoadingQueue.js.map +1 -0
  276. package/dist/esm/resources/factories/BmFontFactory.d.ts +25 -0
  277. package/dist/esm/resources/factories/BmFontFactory.js +96 -0
  278. package/dist/esm/resources/factories/BmFontFactory.js.map +1 -0
  279. package/dist/esm/resources/factories/CsvFactory.d.ts +35 -0
  280. package/dist/esm/resources/factories/CsvFactory.js +87 -0
  281. package/dist/esm/resources/factories/CsvFactory.js.map +1 -0
  282. package/dist/esm/resources/factories/MusicFactory.d.ts +8 -2
  283. package/dist/esm/resources/factories/MusicFactory.js +25 -14
  284. package/dist/esm/resources/factories/MusicFactory.js.map +1 -1
  285. package/dist/esm/resources/factories/SoundFactory.d.ts +2 -2
  286. package/dist/esm/resources/factories/SoundFactory.js.map +1 -1
  287. package/dist/esm/resources/factories/SubtitleFactory.d.ts +28 -0
  288. package/dist/esm/resources/factories/SubtitleFactory.js +203 -0
  289. package/dist/esm/resources/factories/SubtitleFactory.js.map +1 -0
  290. package/dist/esm/resources/factories/SvgFactory.d.ts +18 -1
  291. package/dist/esm/resources/factories/SvgFactory.js +21 -2
  292. package/dist/esm/resources/factories/SvgFactory.js.map +1 -1
  293. package/dist/esm/resources/factories/VideoFactory.d.ts +8 -2
  294. package/dist/esm/resources/factories/VideoFactory.js +27 -20
  295. package/dist/esm/resources/factories/VideoFactory.js.map +1 -1
  296. package/dist/esm/resources/factories/XmlFactory.d.ts +24 -0
  297. package/dist/esm/resources/factories/XmlFactory.js +37 -0
  298. package/dist/esm/resources/factories/XmlFactory.js.map +1 -0
  299. package/dist/esm/resources/index.d.ts +8 -1
  300. package/dist/esm/resources/tokens.d.ts +49 -3
  301. package/dist/esm/resources/tokens.js +50 -4
  302. package/dist/esm/resources/tokens.js.map +1 -1
  303. package/dist/exo.esm.js +6635 -2550
  304. package/dist/exo.esm.js.map +1 -1
  305. package/package.json +16 -4
  306. package/dist/esm/input/interaction-hooks.d.ts +0 -34
  307. package/dist/esm/input/interaction-hooks.js +0 -35
  308. package/dist/esm/input/interaction-hooks.js.map +0 -1
  309. package/dist/esm/rendering/text/DynamicGlyphAtlas.d.ts +0 -33
  310. package/dist/esm/rendering/text/DynamicGlyphAtlas.js +0 -134
  311. package/dist/esm/rendering/text/DynamicGlyphAtlas.js.map +0 -1
  312. package/dist/esm/rendering/text/atlas-singleton.d.ts +0 -7
  313. package/dist/esm/rendering/text/atlas-singleton.js +0 -17
  314. package/dist/esm/rendering/text/atlas-singleton.js.map +0 -1
  315. package/dist/esm/resources/factories/VttFactory.d.ts +0 -24
  316. package/dist/esm/resources/factories/VttFactory.js +0 -158
  317. package/dist/esm/resources/factories/VttFactory.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":";;;;AAMA;AAEA,SAAS,MAAM,CAAC,IAAY,EAAE,GAAW,EAAA;AACvC,IAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,CAAA,GAAA,EAAM,GAAG,CAAA,SAAA,CAAW,CAAC,CAAC;AAC1D,IAAA,OAAO,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC;AAC3C;AAEA,SAAS,MAAM,CAAC,IAAY,EAAE,GAAW,EAAA;AACvC,IAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,CAAA,GAAA,EAAM,GAAG,CAAA,UAAA,CAAY,CAAC,CAAC;AAC3D,IAAA,IAAI,KAAK;AAAE,QAAA,OAAO,KAAK,CAAC,CAAC,CAAC;AAC1B,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,CAAA,GAAA,EAAM,GAAG,CAAA,OAAA,CAAS,CAAC,CAAC;AACvD,IAAA,OAAO,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE;AAC5B;AAEA;;;;AAIG;AACG,SAAU,eAAe,CAAC,IAAY,EAAA;IAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;IACjC,MAAM,KAAK,GAAa,EAAE;AAC1B,IAAA,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB;AAC3C,IAAA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB;IAC1C,IAAI,UAAU,GAAG,CAAC;IAClB,IAAI,IAAI,GAAG,CAAC;AAEZ,IAAA,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;AACvB,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE;AACvB,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE;QAEvB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAE/B,QAAQ,GAAG;YACT,KAAK,QAAQ,EAAE;AACb,gBAAA,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC;AACvC,gBAAA,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;gBAC3B;YACF;YACA,KAAK,MAAM,EAAE;gBACX,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC;gBAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;AACjC,gBAAA,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI;gBAChB;YACF;YACA,KAAK,MAAM,EAAE;gBACX,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC;AAC7B,gBAAA,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE;AACZ,oBAAA,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC;AACpB,oBAAA,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC;AACpB,oBAAA,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC;AAC5B,oBAAA,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC;AAC9B,oBAAA,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC;AAChC,oBAAA,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC;AAChC,oBAAA,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC;AAClC,oBAAA,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;AAC3B,iBAAA,CAAC;gBACF;YACF;YACA,KAAK,SAAS,EAAE;gBACd,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC;gBACnC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC;gBACrC,QAAQ,CAAC,GAAG,CAAC,CAAA,EAAG,KAAK,CAAA,CAAA,EAAI,MAAM,CAAA,CAAE,EAAE,MAAM,CAAC;gBAC1C;YACF;;IAIJ;IAEA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE;AACrD;AAEA;AAEA;;;;AAIG;AACG,MAAO,mBAAoB,SAAQ,oBAA4B,CAAA;IACnD,WAAW,GAAG,QAAQ;AACrB,IAAA,OAAO;AAExB,IAAA,WAAA,CAAmB,MAAc,EAAA;AAC/B,QAAA,KAAK,EAAE;AACP,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM;IACvB;IAEO,MAAM,OAAO,CAAC,QAAkB,EAAA;AACrC,QAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE;IAC3D;IAEO,MAAM,MAAM,CAAC,MAAe,EAAA;AACjC,QAAA,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,MAAuC;AAC7D,QAAA,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC;AACtC,QAAA,MAAM,QAAQ,IAAI,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAc;AAClI,QAAA,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACvC;AACD;;;;"}
@@ -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,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 {};
@@ -32,27 +32,38 @@ class MusicFactory extends AbstractAssetFactory {
32
32
  * load event is received.
33
33
  */
34
34
  async create(source, options = {}) {
35
- const { mimeType, loadEvent, playbackOptions } = options;
35
+ const { mimeType, loadEvent, playbackOptions, stallTimeout } = options;
36
36
  const blob = new Blob([source], { type: mimeType ?? determineMimeType(source) });
37
37
  const objectUrl = this.createObjectUrl(blob);
38
38
  return new Promise((resolve, reject) => {
39
39
  const audio = document.createElement('audio');
40
40
  this._audioElements.push(audio);
41
- const finalize = () => {
41
+ let stallTimer;
42
+ let settled = false;
43
+ const settle = (fn) => {
44
+ if (settled)
45
+ return;
46
+ settled = true;
47
+ if (stallTimer !== undefined) {
48
+ clearTimeout(stallTimer);
49
+ stallTimer = undefined;
50
+ }
42
51
  this.revokeObjectUrl(objectUrl);
52
+ fn();
43
53
  };
44
- audio.addEventListener('error', () => {
45
- finalize();
46
- reject(new Error('Error loading audio source.'));
47
- }, onceListenerOption);
48
- audio.addEventListener('abort', () => {
49
- finalize();
50
- reject(new Error('Audio loading was canceled.'));
51
- }, onceListenerOption);
52
- audio.addEventListener(loadEvent ?? 'canplaythrough', () => {
53
- finalize();
54
- resolve(new Music(audio, playbackOptions));
55
- }, onceListenerOption);
54
+ audio.addEventListener('error', () => settle(() => reject(new Error('Error loading audio source.'))), onceListenerOption);
55
+ audio.addEventListener('abort', () => settle(() => reject(new Error('Audio loading was canceled.'))), onceListenerOption);
56
+ audio.addEventListener('emptied', () => settle(() => reject(new Error('Audio loading was emptied.'))), onceListenerOption);
57
+ audio.addEventListener(loadEvent ?? 'canplaythrough', () => settle(() => resolve(new Music(audio, playbackOptions))), onceListenerOption);
58
+ if (stallTimeout !== undefined) {
59
+ audio.addEventListener('stalled', () => {
60
+ if (settled)
61
+ return;
62
+ if (stallTimer !== undefined)
63
+ clearTimeout(stallTimer);
64
+ stallTimer = setTimeout(() => settle(() => reject(new Error('Audio loading stalled.'))), stallTimeout);
65
+ });
66
+ }
56
67
  audio.preload = 'auto';
57
68
  audio.src = objectUrl;
58
69
  });
@@ -1 +1 @@
1
- {"version":3,"file":"MusicFactory.js","sources":["../../../../../src/resources/factories/MusicFactory.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAKA,MAAM,kBAAkB,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;AAiBzC;;;;;;;;;;AAUG;AACG,MAAO,YAAa,SAAQ,oBAA2B,CAAA;IAC3C,WAAW,GAAG,OAAO;IAEpB,cAAc,GAAuB,EAAE;AAExD;;;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,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,OAAO;QACxD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QAChF,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;QAE5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;YACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC;AAC7C,YAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;YAE/B,MAAM,QAAQ,GAAG,MAAW;AAC1B,gBAAA,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;AACjC,YAAA,CAAC;AAED,YAAA,KAAK,CAAC,gBAAgB,CACpB,OAAO,EACP,MAAK;AACH,gBAAA,QAAQ,EAAE;AACV,gBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAClD,CAAC,EACD,kBAAkB,CACnB;AACD,YAAA,KAAK,CAAC,gBAAgB,CACpB,OAAO,EACP,MAAK;AACH,gBAAA,QAAQ,EAAE;AACV,gBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAClD,CAAC,EACD,kBAAkB,CACnB;YACD,KAAK,CAAC,gBAAgB,CACpB,SAAS,IAAI,gBAAgB,EAC7B,MAAK;AACH,gBAAA,QAAQ,EAAE;gBACV,OAAO,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;YAC5C,CAAC,EACD,kBAAkB,CACnB;AAED,YAAA,KAAK,CAAC,OAAO,GAAG,MAAM;AACtB,YAAA,KAAK,CAAC,GAAG,GAAG,SAAS;AACvB,QAAA,CAAC,CAAC;IACJ;AAEA;;;;AAIG;IACa,OAAO,GAAA;AACrB,QAAA,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,cAAc,EAAE;YACvC,KAAK,CAAC,KAAK,EAAE;AACb,YAAA,KAAK,CAAC,GAAG,GAAG,EAAE;YACd,KAAK,CAAC,IAAI,EAAE;QACd;AACA,QAAA,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;QAC9B,KAAK,CAAC,OAAO,EAAE;IACjB;AACD;;;;"}
1
+ {"version":3,"file":"MusicFactory.js","sources":["../../../../../src/resources/factories/MusicFactory.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import { type AudioSpriteClip, Sound } from '@/audio/Sound';
2
2
  import type { PlaybackOptions } from '@/core/types';
3
3
  import { AbstractAssetFactory } from '@/resources/AbstractAssetFactory';
4
- interface SoundFactoryOptions {
4
+ /** Construction options for {@link SoundFactory.create}. */
5
+ export interface SoundFactoryOptions {
5
6
  /** Initial playback settings forwarded to the {@link Sound} instance. */
6
7
  playbackOptions?: Partial<PlaybackOptions>;
7
8
  /**
@@ -40,4 +41,3 @@ export declare class SoundFactory extends AbstractAssetFactory<Sound> {
40
41
  */
41
42
  create(source: ArrayBuffer, options?: SoundFactoryOptions): Promise<Sound>;
42
43
  }
43
- export {};
@@ -1 +1 @@
1
- {"version":3,"file":"SoundFactory.js","sources":["../../../../../src/resources/factories/SoundFactory.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAsBA;;;;;;;;;AASG;AACG,MAAO,YAAa,SAAQ,oBAA2B,CAAA;IAC3C,WAAW,GAAG,OAAO;AAErC;;;AAGG;IACI,MAAM,OAAO,CAAC,QAAkB,EAAA;AACrC,QAAA,OAAO,QAAQ,CAAC,WAAW,EAAE;IAC/B;AAEA;;;AAGG;AACI,IAAA,MAAM,MAAM,CAAC,MAAmB,EAAE,UAA+B,EAAE,EAAA;AACxE,QAAA,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC;AAEjD,QAAA,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,WAAW,EAAE;YACnC,GAAG,OAAO,CAAC,eAAe;YAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;AACzB,SAAA,CAAC;AAEF,QAAA,OAAO,KAAK;IACd;AACD;;;;"}
1
+ {"version":3,"file":"SoundFactory.js","sources":["../../../../../src/resources/factories/SoundFactory.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAuBA;;;;;;;;;AASG;AACG,MAAO,YAAa,SAAQ,oBAA2B,CAAA;IAC3C,WAAW,GAAG,OAAO;AAErC;;;AAGG;IACI,MAAM,OAAO,CAAC,QAAkB,EAAA;AACrC,QAAA,OAAO,QAAQ,CAAC,WAAW,EAAE;IAC/B;AAEA;;;AAGG;AACI,IAAA,MAAM,MAAM,CAAC,MAAmB,EAAE,UAA+B,EAAE,EAAA;AACxE,QAAA,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC;AAEjD,QAAA,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,WAAW,EAAE;YACnC,GAAG,OAAO,CAAC,eAAe;YAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;AACzB,SAAA,CAAC;AAEF,QAAA,OAAO,KAAK;IACd;AACD;;;;"}
@@ -0,0 +1,28 @@
1
+ import { AbstractAssetFactory } from '@/resources/AbstractAssetFactory';
2
+ type SubtitleFormat = 'vtt' | 'srt';
3
+ interface SubtitleIntermediate {
4
+ fmt: SubtitleFormat;
5
+ text: string;
6
+ }
7
+ /**
8
+ * {@link AssetFactory} implementation that parses WebVTT (`.vtt`) and SubRip
9
+ * (`.srt`) subtitle files and produces an array of {@link VTTCue} instances.
10
+ *
11
+ * Format is detected from the file extension of the response URL; unknown
12
+ * extensions default to VTT parsing. VTT cue settings (`align`, `line`,
13
+ * `position`, `size`, `vertical`) are applied; SRT cues retain default
14
+ * positional properties.
15
+ */
16
+ export declare class SubtitleFactory extends AbstractAssetFactory<VTTCue[]> {
17
+ readonly storageName = "subtitle";
18
+ /**
19
+ * Reads the response body as UTF-8 text and records the subtitle format
20
+ * derived from the response URL's file extension.
21
+ */
22
+ process(response: Response): Promise<SubtitleIntermediate>;
23
+ /**
24
+ * Parses the subtitle text into an ordered array of {@link VTTCue} instances.
25
+ */
26
+ create(source: SubtitleIntermediate): Promise<VTTCue[]>;
27
+ }
28
+ export {};