@kurot/core 1.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (567) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +154 -0
  3. package/dist/index.d.ts +14 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +14 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/kurot/benchmark/BenchmarkRunner.d.ts +60 -0
  8. package/dist/kurot/benchmark/BenchmarkRunner.d.ts.map +1 -0
  9. package/dist/kurot/benchmark/BenchmarkRunner.js +112 -0
  10. package/dist/kurot/benchmark/BenchmarkRunner.js.map +1 -0
  11. package/dist/kurot/benchmark/MetricsCollector.d.ts +34 -0
  12. package/dist/kurot/benchmark/MetricsCollector.d.ts.map +1 -0
  13. package/dist/kurot/benchmark/MetricsCollector.js +123 -0
  14. package/dist/kurot/benchmark/MetricsCollector.js.map +1 -0
  15. package/dist/kurot/benchmark/PerfPanel.d.ts +24 -0
  16. package/dist/kurot/benchmark/PerfPanel.d.ts.map +1 -0
  17. package/dist/kurot/benchmark/PerfPanel.js +131 -0
  18. package/dist/kurot/benchmark/PerfPanel.js.map +1 -0
  19. package/dist/kurot/benchmark/ReportExporter.d.ts +8 -0
  20. package/dist/kurot/benchmark/ReportExporter.d.ts.map +1 -0
  21. package/dist/kurot/benchmark/ReportExporter.js +54 -0
  22. package/dist/kurot/benchmark/ReportExporter.js.map +1 -0
  23. package/dist/kurot/benchmark/SceneRegistry.d.ts +16 -0
  24. package/dist/kurot/benchmark/SceneRegistry.d.ts.map +1 -0
  25. package/dist/kurot/benchmark/SceneRegistry.js +233 -0
  26. package/dist/kurot/benchmark/SceneRegistry.js.map +1 -0
  27. package/dist/kurot/benchmark/types.d.ts +47 -0
  28. package/dist/kurot/benchmark/types.d.ts.map +1 -0
  29. package/dist/kurot/benchmark/types.js +2 -0
  30. package/dist/kurot/benchmark/types.js.map +1 -0
  31. package/dist/kurot/display/Bitmap.d.ts +53 -0
  32. package/dist/kurot/display/Bitmap.d.ts.map +1 -0
  33. package/dist/kurot/display/Bitmap.js +185 -0
  34. package/dist/kurot/display/Bitmap.js.map +1 -0
  35. package/dist/kurot/display/DisplayObject.d.ts +253 -0
  36. package/dist/kurot/display/DisplayObject.d.ts.map +1 -0
  37. package/dist/kurot/display/DisplayObject.js +833 -0
  38. package/dist/kurot/display/DisplayObject.js.map +1 -0
  39. package/dist/kurot/display/DisplayObjectContainer.d.ts +57 -0
  40. package/dist/kurot/display/DisplayObjectContainer.d.ts.map +1 -0
  41. package/dist/kurot/display/DisplayObjectContainer.js +330 -0
  42. package/dist/kurot/display/DisplayObjectContainer.js.map +1 -0
  43. package/dist/kurot/display/Graphics.d.ts +48 -0
  44. package/dist/kurot/display/Graphics.d.ts.map +1 -0
  45. package/dist/kurot/display/Graphics.js +315 -0
  46. package/dist/kurot/display/Graphics.js.map +1 -0
  47. package/dist/kurot/display/GraphicsPath.d.ts +112 -0
  48. package/dist/kurot/display/GraphicsPath.d.ts.map +1 -0
  49. package/dist/kurot/display/GraphicsPath.js +2 -0
  50. package/dist/kurot/display/GraphicsPath.js.map +1 -0
  51. package/dist/kurot/display/Mesh.d.ts +21 -0
  52. package/dist/kurot/display/Mesh.d.ts.map +1 -0
  53. package/dist/kurot/display/Mesh.js +56 -0
  54. package/dist/kurot/display/Mesh.js.map +1 -0
  55. package/dist/kurot/display/Shape.d.ts +12 -0
  56. package/dist/kurot/display/Shape.d.ts.map +1 -0
  57. package/dist/kurot/display/Shape.js +35 -0
  58. package/dist/kurot/display/Shape.js.map +1 -0
  59. package/dist/kurot/display/Sprite.d.ts +13 -0
  60. package/dist/kurot/display/Sprite.d.ts.map +1 -0
  61. package/dist/kurot/display/Sprite.js +38 -0
  62. package/dist/kurot/display/Sprite.js.map +1 -0
  63. package/dist/kurot/display/Stage.d.ts +45 -0
  64. package/dist/kurot/display/Stage.d.ts.map +1 -0
  65. package/dist/kurot/display/Stage.js +107 -0
  66. package/dist/kurot/display/Stage.js.map +1 -0
  67. package/dist/kurot/display/enums/BitmapFillMode.d.ts +7 -0
  68. package/dist/kurot/display/enums/BitmapFillMode.d.ts.map +1 -0
  69. package/dist/kurot/display/enums/BitmapFillMode.js +6 -0
  70. package/dist/kurot/display/enums/BitmapFillMode.js.map +1 -0
  71. package/dist/kurot/display/enums/BlendMode.d.ts +24 -0
  72. package/dist/kurot/display/enums/BlendMode.d.ts.map +1 -0
  73. package/dist/kurot/display/enums/BlendMode.js +31 -0
  74. package/dist/kurot/display/enums/BlendMode.js.map +1 -0
  75. package/dist/kurot/display/enums/CapsStyle.d.ts +7 -0
  76. package/dist/kurot/display/enums/CapsStyle.d.ts.map +1 -0
  77. package/dist/kurot/display/enums/CapsStyle.js +6 -0
  78. package/dist/kurot/display/enums/CapsStyle.js.map +1 -0
  79. package/dist/kurot/display/enums/GradientType.d.ts +6 -0
  80. package/dist/kurot/display/enums/GradientType.d.ts.map +1 -0
  81. package/dist/kurot/display/enums/GradientType.js +5 -0
  82. package/dist/kurot/display/enums/GradientType.js.map +1 -0
  83. package/dist/kurot/display/enums/JointStyle.d.ts +7 -0
  84. package/dist/kurot/display/enums/JointStyle.d.ts.map +1 -0
  85. package/dist/kurot/display/enums/JointStyle.js +6 -0
  86. package/dist/kurot/display/enums/JointStyle.js.map +1 -0
  87. package/dist/kurot/display/enums/OrientationMode.d.ts +8 -0
  88. package/dist/kurot/display/enums/OrientationMode.d.ts.map +1 -0
  89. package/dist/kurot/display/enums/OrientationMode.js +7 -0
  90. package/dist/kurot/display/enums/OrientationMode.js.map +1 -0
  91. package/dist/kurot/display/enums/StageScaleMode.d.ts +12 -0
  92. package/dist/kurot/display/enums/StageScaleMode.d.ts.map +1 -0
  93. package/dist/kurot/display/enums/StageScaleMode.js +11 -0
  94. package/dist/kurot/display/enums/StageScaleMode.js.map +1 -0
  95. package/dist/kurot/display/enums/index.d.ts +8 -0
  96. package/dist/kurot/display/enums/index.d.ts.map +1 -0
  97. package/dist/kurot/display/enums/index.js +8 -0
  98. package/dist/kurot/display/enums/index.js.map +1 -0
  99. package/dist/kurot/display/index.d.ts +21 -0
  100. package/dist/kurot/display/index.d.ts.map +1 -0
  101. package/dist/kurot/display/index.js +20 -0
  102. package/dist/kurot/display/index.js.map +1 -0
  103. package/dist/kurot/display/texture/BitmapData.d.ts +36 -0
  104. package/dist/kurot/display/texture/BitmapData.d.ts.map +1 -0
  105. package/dist/kurot/display/texture/BitmapData.js +129 -0
  106. package/dist/kurot/display/texture/BitmapData.js.map +1 -0
  107. package/dist/kurot/display/texture/RenderTexture.d.ts +15 -0
  108. package/dist/kurot/display/texture/RenderTexture.d.ts.map +1 -0
  109. package/dist/kurot/display/texture/RenderTexture.js +58 -0
  110. package/dist/kurot/display/texture/RenderTexture.js.map +1 -0
  111. package/dist/kurot/display/texture/SpriteSheet.d.ts +12 -0
  112. package/dist/kurot/display/texture/SpriteSheet.d.ts.map +1 -0
  113. package/dist/kurot/display/texture/SpriteSheet.js +32 -0
  114. package/dist/kurot/display/texture/SpriteSheet.js.map +1 -0
  115. package/dist/kurot/display/texture/Texture.d.ts +32 -0
  116. package/dist/kurot/display/texture/Texture.d.ts.map +1 -0
  117. package/dist/kurot/display/texture/Texture.js +76 -0
  118. package/dist/kurot/display/texture/Texture.js.map +1 -0
  119. package/dist/kurot/display/texture/index.d.ts +5 -0
  120. package/dist/kurot/display/texture/index.d.ts.map +1 -0
  121. package/dist/kurot/display/texture/index.js +5 -0
  122. package/dist/kurot/display/texture/index.js.map +1 -0
  123. package/dist/kurot/events/Event.d.ts +58 -0
  124. package/dist/kurot/events/Event.d.ts.map +1 -0
  125. package/dist/kurot/events/Event.js +142 -0
  126. package/dist/kurot/events/Event.js.map +1 -0
  127. package/dist/kurot/events/EventDispatcher.d.ts +25 -0
  128. package/dist/kurot/events/EventDispatcher.d.ts.map +1 -0
  129. package/dist/kurot/events/EventDispatcher.js +121 -0
  130. package/dist/kurot/events/EventDispatcher.js.map +1 -0
  131. package/dist/kurot/events/EventPhase.d.ts +6 -0
  132. package/dist/kurot/events/EventPhase.d.ts.map +1 -0
  133. package/dist/kurot/events/EventPhase.js +2 -0
  134. package/dist/kurot/events/EventPhase.js.map +1 -0
  135. package/dist/kurot/events/FocusEvent.d.ts +7 -0
  136. package/dist/kurot/events/FocusEvent.d.ts.map +1 -0
  137. package/dist/kurot/events/FocusEvent.js +11 -0
  138. package/dist/kurot/events/FocusEvent.js.map +1 -0
  139. package/dist/kurot/events/HTTPStatusEvent.d.ts +10 -0
  140. package/dist/kurot/events/HTTPStatusEvent.d.ts.map +1 -0
  141. package/dist/kurot/events/HTTPStatusEvent.js +24 -0
  142. package/dist/kurot/events/HTTPStatusEvent.js.map +1 -0
  143. package/dist/kurot/events/IEventDispatcher.d.ts +10 -0
  144. package/dist/kurot/events/IEventDispatcher.d.ts.map +1 -0
  145. package/dist/kurot/events/IEventDispatcher.js +2 -0
  146. package/dist/kurot/events/IEventDispatcher.js.map +1 -0
  147. package/dist/kurot/events/IOErrorEvent.d.ts +8 -0
  148. package/dist/kurot/events/IOErrorEvent.d.ts.map +1 -0
  149. package/dist/kurot/events/IOErrorEvent.js +17 -0
  150. package/dist/kurot/events/IOErrorEvent.js.map +1 -0
  151. package/dist/kurot/events/ProgressEvent.d.ts +11 -0
  152. package/dist/kurot/events/ProgressEvent.d.ts.map +1 -0
  153. package/dist/kurot/events/ProgressEvent.js +25 -0
  154. package/dist/kurot/events/ProgressEvent.js.map +1 -0
  155. package/dist/kurot/events/StageOrientationEvent.d.ts +8 -0
  156. package/dist/kurot/events/StageOrientationEvent.d.ts.map +1 -0
  157. package/dist/kurot/events/StageOrientationEvent.js +17 -0
  158. package/dist/kurot/events/StageOrientationEvent.js.map +1 -0
  159. package/dist/kurot/events/TextEvent.d.ts +9 -0
  160. package/dist/kurot/events/TextEvent.d.ts.map +1 -0
  161. package/dist/kurot/events/TextEvent.js +21 -0
  162. package/dist/kurot/events/TextEvent.js.map +1 -0
  163. package/dist/kurot/events/TimerEvent.d.ts +14 -0
  164. package/dist/kurot/events/TimerEvent.d.ts.map +1 -0
  165. package/dist/kurot/events/TimerEvent.js +27 -0
  166. package/dist/kurot/events/TimerEvent.js.map +1 -0
  167. package/dist/kurot/events/TouchEvent.d.ts +32 -0
  168. package/dist/kurot/events/TouchEvent.d.ts.map +1 -0
  169. package/dist/kurot/events/TouchEvent.js +85 -0
  170. package/dist/kurot/events/TouchEvent.js.map +1 -0
  171. package/dist/kurot/events/index.d.ts +13 -0
  172. package/dist/kurot/events/index.d.ts.map +1 -0
  173. package/dist/kurot/events/index.js +11 -0
  174. package/dist/kurot/events/index.js.map +1 -0
  175. package/dist/kurot/external/ExternalInterface.d.ts +18 -0
  176. package/dist/kurot/external/ExternalInterface.d.ts.map +1 -0
  177. package/dist/kurot/external/ExternalInterface.js +23 -0
  178. package/dist/kurot/external/ExternalInterface.js.map +1 -0
  179. package/dist/kurot/external/index.d.ts +2 -0
  180. package/dist/kurot/external/index.d.ts.map +1 -0
  181. package/dist/kurot/external/index.js +2 -0
  182. package/dist/kurot/external/index.js.map +1 -0
  183. package/dist/kurot/filters/BlurFilter.d.ts +16 -0
  184. package/dist/kurot/filters/BlurFilter.d.ts.map +1 -0
  185. package/dist/kurot/filters/BlurFilter.js +56 -0
  186. package/dist/kurot/filters/BlurFilter.js.map +1 -0
  187. package/dist/kurot/filters/ColorMatrixFilter.d.ts +10 -0
  188. package/dist/kurot/filters/ColorMatrixFilter.d.ts.map +1 -0
  189. package/dist/kurot/filters/ColorMatrixFilter.js +51 -0
  190. package/dist/kurot/filters/ColorMatrixFilter.js.map +1 -0
  191. package/dist/kurot/filters/CustomFilter.d.ts +12 -0
  192. package/dist/kurot/filters/CustomFilter.d.ts.map +1 -0
  193. package/dist/kurot/filters/CustomFilter.js +43 -0
  194. package/dist/kurot/filters/CustomFilter.js.map +1 -0
  195. package/dist/kurot/filters/DropShadowFilter.d.ts +16 -0
  196. package/dist/kurot/filters/DropShadowFilter.d.ts.map +1 -0
  197. package/dist/kurot/filters/DropShadowFilter.js +76 -0
  198. package/dist/kurot/filters/DropShadowFilter.js.map +1 -0
  199. package/dist/kurot/filters/Filter.d.ts +18 -0
  200. package/dist/kurot/filters/Filter.d.ts.map +1 -0
  201. package/dist/kurot/filters/Filter.js +22 -0
  202. package/dist/kurot/filters/Filter.js.map +1 -0
  203. package/dist/kurot/filters/GlowFilter.d.ts +34 -0
  204. package/dist/kurot/filters/GlowFilter.d.ts.map +1 -0
  205. package/dist/kurot/filters/GlowFilter.js +131 -0
  206. package/dist/kurot/filters/GlowFilter.js.map +1 -0
  207. package/dist/kurot/filters/index.d.ts +7 -0
  208. package/dist/kurot/filters/index.d.ts.map +1 -0
  209. package/dist/kurot/filters/index.js +7 -0
  210. package/dist/kurot/filters/index.js.map +1 -0
  211. package/dist/kurot/geom/Matrix.d.ts +50 -0
  212. package/dist/kurot/geom/Matrix.d.ts.map +1 -0
  213. package/dist/kurot/geom/Matrix.js +310 -0
  214. package/dist/kurot/geom/Matrix.js.map +1 -0
  215. package/dist/kurot/geom/Point.d.ts +23 -0
  216. package/dist/kurot/geom/Point.d.ts.map +1 -0
  217. package/dist/kurot/geom/Point.js +73 -0
  218. package/dist/kurot/geom/Point.js.map +1 -0
  219. package/dist/kurot/geom/Rectangle.d.ts +47 -0
  220. package/dist/kurot/geom/Rectangle.d.ts.map +1 -0
  221. package/dist/kurot/geom/Rectangle.js +174 -0
  222. package/dist/kurot/geom/Rectangle.js.map +1 -0
  223. package/dist/kurot/geom/index.d.ts +4 -0
  224. package/dist/kurot/geom/index.d.ts.map +1 -0
  225. package/dist/kurot/geom/index.js +4 -0
  226. package/dist/kurot/geom/index.js.map +1 -0
  227. package/dist/kurot/localStorage/index.d.ts +2 -0
  228. package/dist/kurot/localStorage/index.d.ts.map +1 -0
  229. package/dist/kurot/localStorage/index.js +2 -0
  230. package/dist/kurot/localStorage/index.js.map +1 -0
  231. package/dist/kurot/localStorage/localStorage.d.ts +5 -0
  232. package/dist/kurot/localStorage/localStorage.d.ts.map +1 -0
  233. package/dist/kurot/localStorage/localStorage.js +19 -0
  234. package/dist/kurot/localStorage/localStorage.js.map +1 -0
  235. package/dist/kurot/media/Sound.d.ts +33 -0
  236. package/dist/kurot/media/Sound.d.ts.map +1 -0
  237. package/dist/kurot/media/Sound.js +163 -0
  238. package/dist/kurot/media/Sound.js.map +1 -0
  239. package/dist/kurot/media/SoundChannel.d.ts +28 -0
  240. package/dist/kurot/media/SoundChannel.d.ts.map +1 -0
  241. package/dist/kurot/media/SoundChannel.js +117 -0
  242. package/dist/kurot/media/SoundChannel.js.map +1 -0
  243. package/dist/kurot/media/Video.d.ts +50 -0
  244. package/dist/kurot/media/Video.d.ts.map +1 -0
  245. package/dist/kurot/media/Video.js +242 -0
  246. package/dist/kurot/media/Video.js.map +1 -0
  247. package/dist/kurot/media/index.d.ts +4 -0
  248. package/dist/kurot/media/index.d.ts.map +1 -0
  249. package/dist/kurot/media/index.js +4 -0
  250. package/dist/kurot/media/index.js.map +1 -0
  251. package/dist/kurot/net/HttpMethod.d.ts +12 -0
  252. package/dist/kurot/net/HttpMethod.d.ts.map +1 -0
  253. package/dist/kurot/net/HttpMethod.js +10 -0
  254. package/dist/kurot/net/HttpMethod.js.map +1 -0
  255. package/dist/kurot/net/HttpRequest.d.ts +69 -0
  256. package/dist/kurot/net/HttpRequest.d.ts.map +1 -0
  257. package/dist/kurot/net/HttpRequest.js +121 -0
  258. package/dist/kurot/net/HttpRequest.js.map +1 -0
  259. package/dist/kurot/net/HttpResponseType.d.ts +12 -0
  260. package/dist/kurot/net/HttpResponseType.d.ts.map +1 -0
  261. package/dist/kurot/net/HttpResponseType.js +10 -0
  262. package/dist/kurot/net/HttpResponseType.js.map +1 -0
  263. package/dist/kurot/net/ImageLoader.d.ts +34 -0
  264. package/dist/kurot/net/ImageLoader.d.ts.map +1 -0
  265. package/dist/kurot/net/ImageLoader.js +54 -0
  266. package/dist/kurot/net/ImageLoader.js.map +1 -0
  267. package/dist/kurot/net/index.d.ts +7 -0
  268. package/dist/kurot/net/index.d.ts.map +1 -0
  269. package/dist/kurot/net/index.js +5 -0
  270. package/dist/kurot/net/index.js.map +1 -0
  271. package/dist/kurot/player/KurotOptions.d.ts +25 -0
  272. package/dist/kurot/player/KurotOptions.d.ts.map +1 -0
  273. package/dist/kurot/player/KurotOptions.js +2 -0
  274. package/dist/kurot/player/KurotOptions.js.map +1 -0
  275. package/dist/kurot/player/Player.d.ts +45 -0
  276. package/dist/kurot/player/Player.d.ts.map +1 -0
  277. package/dist/kurot/player/Player.js +158 -0
  278. package/dist/kurot/player/Player.js.map +1 -0
  279. package/dist/kurot/player/RenderPipe.d.ts +33 -0
  280. package/dist/kurot/player/RenderPipe.d.ts.map +1 -0
  281. package/dist/kurot/player/RenderPipe.js +2 -0
  282. package/dist/kurot/player/RenderPipe.js.map +1 -0
  283. package/dist/kurot/player/ScreenAdapter.d.ts +29 -0
  284. package/dist/kurot/player/ScreenAdapter.d.ts.map +1 -0
  285. package/dist/kurot/player/ScreenAdapter.js +127 -0
  286. package/dist/kurot/player/ScreenAdapter.js.map +1 -0
  287. package/dist/kurot/player/SystemTicker.d.ts +63 -0
  288. package/dist/kurot/player/SystemTicker.d.ts.map +1 -0
  289. package/dist/kurot/player/SystemTicker.js +209 -0
  290. package/dist/kurot/player/SystemTicker.js.map +1 -0
  291. package/dist/kurot/player/TouchHandler.d.ts +39 -0
  292. package/dist/kurot/player/TouchHandler.d.ts.map +1 -0
  293. package/dist/kurot/player/TouchHandler.js +152 -0
  294. package/dist/kurot/player/TouchHandler.js.map +1 -0
  295. package/dist/kurot/player/canvas/CanvasRenderer.d.ts +50 -0
  296. package/dist/kurot/player/canvas/CanvasRenderer.d.ts.map +1 -0
  297. package/dist/kurot/player/canvas/CanvasRenderer.js +811 -0
  298. package/dist/kurot/player/canvas/CanvasRenderer.js.map +1 -0
  299. package/dist/kurot/player/canvas/DisplayList.d.ts +36 -0
  300. package/dist/kurot/player/canvas/DisplayList.d.ts.map +1 -0
  301. package/dist/kurot/player/canvas/DisplayList.js +100 -0
  302. package/dist/kurot/player/canvas/DisplayList.js.map +1 -0
  303. package/dist/kurot/player/canvas/RenderBuffer.d.ts +35 -0
  304. package/dist/kurot/player/canvas/RenderBuffer.d.ts.map +1 -0
  305. package/dist/kurot/player/canvas/RenderBuffer.js +83 -0
  306. package/dist/kurot/player/canvas/RenderBuffer.js.map +1 -0
  307. package/dist/kurot/player/canvas/index.d.ts +4 -0
  308. package/dist/kurot/player/canvas/index.d.ts.map +1 -0
  309. package/dist/kurot/player/canvas/index.js +4 -0
  310. package/dist/kurot/player/canvas/index.js.map +1 -0
  311. package/dist/kurot/player/createPlayer.d.ts +36 -0
  312. package/dist/kurot/player/createPlayer.d.ts.map +1 -0
  313. package/dist/kurot/player/createPlayer.js +83 -0
  314. package/dist/kurot/player/createPlayer.js.map +1 -0
  315. package/dist/kurot/player/index.d.ts +11 -0
  316. package/dist/kurot/player/index.d.ts.map +1 -0
  317. package/dist/kurot/player/index.js +14 -0
  318. package/dist/kurot/player/index.js.map +1 -0
  319. package/dist/kurot/player/webgl/InstructionSet.d.ts +61 -0
  320. package/dist/kurot/player/webgl/InstructionSet.d.ts.map +1 -0
  321. package/dist/kurot/player/webgl/InstructionSet.js +84 -0
  322. package/dist/kurot/player/webgl/InstructionSet.js.map +1 -0
  323. package/dist/kurot/player/webgl/MultiTextureBatcher.d.ts +39 -0
  324. package/dist/kurot/player/webgl/MultiTextureBatcher.d.ts.map +1 -0
  325. package/dist/kurot/player/webgl/MultiTextureBatcher.js +63 -0
  326. package/dist/kurot/player/webgl/MultiTextureBatcher.js.map +1 -0
  327. package/dist/kurot/player/webgl/WebGLDrawCmdManager.d.ts +57 -0
  328. package/dist/kurot/player/webgl/WebGLDrawCmdManager.d.ts.map +1 -0
  329. package/dist/kurot/player/webgl/WebGLDrawCmdManager.js +197 -0
  330. package/dist/kurot/player/webgl/WebGLDrawCmdManager.js.map +1 -0
  331. package/dist/kurot/player/webgl/WebGLProgram.d.ts +15 -0
  332. package/dist/kurot/player/webgl/WebGLProgram.d.ts.map +1 -0
  333. package/dist/kurot/player/webgl/WebGLProgram.js +32 -0
  334. package/dist/kurot/player/webgl/WebGLProgram.js.map +1 -0
  335. package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts +57 -0
  336. package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts.map +1 -0
  337. package/dist/kurot/player/webgl/WebGLRenderBuffer.js +254 -0
  338. package/dist/kurot/player/webgl/WebGLRenderBuffer.js.map +1 -0
  339. package/dist/kurot/player/webgl/WebGLRenderContext.d.ts +128 -0
  340. package/dist/kurot/player/webgl/WebGLRenderContext.d.ts.map +1 -0
  341. package/dist/kurot/player/webgl/WebGLRenderContext.js +933 -0
  342. package/dist/kurot/player/webgl/WebGLRenderContext.js.map +1 -0
  343. package/dist/kurot/player/webgl/WebGLRenderTarget.d.ts +20 -0
  344. package/dist/kurot/player/webgl/WebGLRenderTarget.d.ts.map +1 -0
  345. package/dist/kurot/player/webgl/WebGLRenderTarget.js +90 -0
  346. package/dist/kurot/player/webgl/WebGLRenderTarget.js.map +1 -0
  347. package/dist/kurot/player/webgl/WebGLRenderer.d.ts +208 -0
  348. package/dist/kurot/player/webgl/WebGLRenderer.d.ts.map +1 -0
  349. package/dist/kurot/player/webgl/WebGLRenderer.js +921 -0
  350. package/dist/kurot/player/webgl/WebGLRenderer.js.map +1 -0
  351. package/dist/kurot/player/webgl/WebGLUtils.d.ts +17 -0
  352. package/dist/kurot/player/webgl/WebGLUtils.d.ts.map +1 -0
  353. package/dist/kurot/player/webgl/WebGLUtils.js +56 -0
  354. package/dist/kurot/player/webgl/WebGLUtils.js.map +1 -0
  355. package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts +39 -0
  356. package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts.map +1 -0
  357. package/dist/kurot/player/webgl/WebGLVertexArrayObject.js +375 -0
  358. package/dist/kurot/player/webgl/WebGLVertexArrayObject.js.map +1 -0
  359. package/dist/kurot/player/webgl/index.d.ts +11 -0
  360. package/dist/kurot/player/webgl/index.d.ts.map +1 -0
  361. package/dist/kurot/player/webgl/index.js +11 -0
  362. package/dist/kurot/player/webgl/index.js.map +1 -0
  363. package/dist/kurot/player/webgl/pipes/BitmapPipe.d.ts +35 -0
  364. package/dist/kurot/player/webgl/pipes/BitmapPipe.d.ts.map +1 -0
  365. package/dist/kurot/player/webgl/pipes/BitmapPipe.js +130 -0
  366. package/dist/kurot/player/webgl/pipes/BitmapPipe.js.map +1 -0
  367. package/dist/kurot/player/webgl/pipes/FilterPipe.d.ts +68 -0
  368. package/dist/kurot/player/webgl/pipes/FilterPipe.d.ts.map +1 -0
  369. package/dist/kurot/player/webgl/pipes/FilterPipe.js +176 -0
  370. package/dist/kurot/player/webgl/pipes/FilterPipe.js.map +1 -0
  371. package/dist/kurot/player/webgl/pipes/GraphicsPipe.d.ts +38 -0
  372. package/dist/kurot/player/webgl/pipes/GraphicsPipe.d.ts.map +1 -0
  373. package/dist/kurot/player/webgl/pipes/GraphicsPipe.js +165 -0
  374. package/dist/kurot/player/webgl/pipes/GraphicsPipe.js.map +1 -0
  375. package/dist/kurot/player/webgl/pipes/MaskPipe.d.ts +58 -0
  376. package/dist/kurot/player/webgl/pipes/MaskPipe.d.ts.map +1 -0
  377. package/dist/kurot/player/webgl/pipes/MaskPipe.js +206 -0
  378. package/dist/kurot/player/webgl/pipes/MaskPipe.js.map +1 -0
  379. package/dist/kurot/player/webgl/pipes/MeshPipe.d.ts +22 -0
  380. package/dist/kurot/player/webgl/pipes/MeshPipe.d.ts.map +1 -0
  381. package/dist/kurot/player/webgl/pipes/MeshPipe.js +50 -0
  382. package/dist/kurot/player/webgl/pipes/MeshPipe.js.map +1 -0
  383. package/dist/kurot/player/webgl/pipes/ParticlePipe.d.ts +23 -0
  384. package/dist/kurot/player/webgl/pipes/ParticlePipe.d.ts.map +1 -0
  385. package/dist/kurot/player/webgl/pipes/ParticlePipe.js +48 -0
  386. package/dist/kurot/player/webgl/pipes/ParticlePipe.js.map +1 -0
  387. package/dist/kurot/player/webgl/pipes/TextPipe.d.ts +54 -0
  388. package/dist/kurot/player/webgl/pipes/TextPipe.d.ts.map +1 -0
  389. package/dist/kurot/player/webgl/pipes/TextPipe.js +201 -0
  390. package/dist/kurot/player/webgl/pipes/TextPipe.js.map +1 -0
  391. package/dist/kurot/player/webgl/pipes/index.d.ts +8 -0
  392. package/dist/kurot/player/webgl/pipes/index.d.ts.map +1 -0
  393. package/dist/kurot/player/webgl/pipes/index.js +8 -0
  394. package/dist/kurot/player/webgl/pipes/index.js.map +1 -0
  395. package/dist/kurot/player/webgl/shaders/ShaderLib.d.ts +23 -0
  396. package/dist/kurot/player/webgl/shaders/ShaderLib.d.ts.map +1 -0
  397. package/dist/kurot/player/webgl/shaders/ShaderLib.js +263 -0
  398. package/dist/kurot/player/webgl/shaders/ShaderLib.js.map +1 -0
  399. package/dist/kurot/player/webgl/shaders/ShaderLib2.d.ts +23 -0
  400. package/dist/kurot/player/webgl/shaders/ShaderLib2.d.ts.map +1 -0
  401. package/dist/kurot/player/webgl/shaders/ShaderLib2.js +280 -0
  402. package/dist/kurot/player/webgl/shaders/ShaderLib2.js.map +1 -0
  403. package/dist/kurot/player/webgl/shaders/index.d.ts +5 -0
  404. package/dist/kurot/player/webgl/shaders/index.d.ts.map +1 -0
  405. package/dist/kurot/player/webgl/shaders/index.js +5 -0
  406. package/dist/kurot/player/webgl/shaders/index.js.map +1 -0
  407. package/dist/kurot/resource/Resource.d.ts +126 -0
  408. package/dist/kurot/resource/Resource.d.ts.map +1 -0
  409. package/dist/kurot/resource/Resource.js +377 -0
  410. package/dist/kurot/resource/Resource.js.map +1 -0
  411. package/dist/kurot/resource/ResourceConfig.d.ts +71 -0
  412. package/dist/kurot/resource/ResourceConfig.d.ts.map +1 -0
  413. package/dist/kurot/resource/ResourceConfig.js +146 -0
  414. package/dist/kurot/resource/ResourceConfig.js.map +1 -0
  415. package/dist/kurot/resource/ResourceEvent.d.ts +29 -0
  416. package/dist/kurot/resource/ResourceEvent.d.ts.map +1 -0
  417. package/dist/kurot/resource/ResourceEvent.js +12 -0
  418. package/dist/kurot/resource/ResourceEvent.js.map +1 -0
  419. package/dist/kurot/resource/ResourceItem.d.ts +24 -0
  420. package/dist/kurot/resource/ResourceItem.d.ts.map +1 -0
  421. package/dist/kurot/resource/ResourceItem.js +29 -0
  422. package/dist/kurot/resource/ResourceItem.js.map +1 -0
  423. package/dist/kurot/resource/ResourceLoader.d.ts +73 -0
  424. package/dist/kurot/resource/ResourceLoader.d.ts.map +1 -0
  425. package/dist/kurot/resource/ResourceLoader.js +174 -0
  426. package/dist/kurot/resource/ResourceLoader.js.map +1 -0
  427. package/dist/kurot/resource/analyzers/AnalyzerBase.d.ts +31 -0
  428. package/dist/kurot/resource/analyzers/AnalyzerBase.d.ts.map +1 -0
  429. package/dist/kurot/resource/analyzers/AnalyzerBase.js +38 -0
  430. package/dist/kurot/resource/analyzers/AnalyzerBase.js.map +1 -0
  431. package/dist/kurot/resource/analyzers/ImageAnalyzer.d.ts +13 -0
  432. package/dist/kurot/resource/analyzers/ImageAnalyzer.d.ts.map +1 -0
  433. package/dist/kurot/resource/analyzers/ImageAnalyzer.js +54 -0
  434. package/dist/kurot/resource/analyzers/ImageAnalyzer.js.map +1 -0
  435. package/dist/kurot/resource/analyzers/JsonAnalyzer.d.ts +12 -0
  436. package/dist/kurot/resource/analyzers/JsonAnalyzer.d.ts.map +1 -0
  437. package/dist/kurot/resource/analyzers/JsonAnalyzer.js +54 -0
  438. package/dist/kurot/resource/analyzers/JsonAnalyzer.js.map +1 -0
  439. package/dist/kurot/resource/analyzers/SheetAnalyzer.d.ts +32 -0
  440. package/dist/kurot/resource/analyzers/SheetAnalyzer.d.ts.map +1 -0
  441. package/dist/kurot/resource/analyzers/SheetAnalyzer.js +182 -0
  442. package/dist/kurot/resource/analyzers/SheetAnalyzer.js.map +1 -0
  443. package/dist/kurot/resource/analyzers/SoundAnalyzer.d.ts +13 -0
  444. package/dist/kurot/resource/analyzers/SoundAnalyzer.d.ts.map +1 -0
  445. package/dist/kurot/resource/analyzers/SoundAnalyzer.js +45 -0
  446. package/dist/kurot/resource/analyzers/SoundAnalyzer.js.map +1 -0
  447. package/dist/kurot/resource/analyzers/TextAnalyzer.d.ts +12 -0
  448. package/dist/kurot/resource/analyzers/TextAnalyzer.d.ts.map +1 -0
  449. package/dist/kurot/resource/analyzers/TextAnalyzer.js +49 -0
  450. package/dist/kurot/resource/analyzers/TextAnalyzer.js.map +1 -0
  451. package/dist/kurot/resource/analyzers/index.d.ts +7 -0
  452. package/dist/kurot/resource/analyzers/index.d.ts.map +1 -0
  453. package/dist/kurot/resource/analyzers/index.js +7 -0
  454. package/dist/kurot/resource/analyzers/index.js.map +1 -0
  455. package/dist/kurot/resource/index.d.ts +15 -0
  456. package/dist/kurot/resource/index.d.ts.map +1 -0
  457. package/dist/kurot/resource/index.js +15 -0
  458. package/dist/kurot/resource/index.js.map +1 -0
  459. package/dist/kurot/system/Capabilities.d.ts +46 -0
  460. package/dist/kurot/system/Capabilities.d.ts.map +1 -0
  461. package/dist/kurot/system/Capabilities.js +100 -0
  462. package/dist/kurot/system/Capabilities.js.map +1 -0
  463. package/dist/kurot/system/index.d.ts +2 -0
  464. package/dist/kurot/system/index.d.ts.map +1 -0
  465. package/dist/kurot/system/index.js +2 -0
  466. package/dist/kurot/system/index.js.map +1 -0
  467. package/dist/kurot/text/BitmapFont.d.ts +31 -0
  468. package/dist/kurot/text/BitmapFont.d.ts.map +1 -0
  469. package/dist/kurot/text/BitmapFont.js +86 -0
  470. package/dist/kurot/text/BitmapFont.js.map +1 -0
  471. package/dist/kurot/text/BitmapText.d.ts +58 -0
  472. package/dist/kurot/text/BitmapText.d.ts.map +1 -0
  473. package/dist/kurot/text/BitmapText.js +245 -0
  474. package/dist/kurot/text/BitmapText.js.map +1 -0
  475. package/dist/kurot/text/HtmlTextParser.d.ts +14 -0
  476. package/dist/kurot/text/HtmlTextParser.d.ts.map +1 -0
  477. package/dist/kurot/text/HtmlTextParser.js +147 -0
  478. package/dist/kurot/text/HtmlTextParser.js.map +1 -0
  479. package/dist/kurot/text/InputController.d.ts +29 -0
  480. package/dist/kurot/text/InputController.d.ts.map +1 -0
  481. package/dist/kurot/text/InputController.js +131 -0
  482. package/dist/kurot/text/InputController.js.map +1 -0
  483. package/dist/kurot/text/StageText.d.ts +51 -0
  484. package/dist/kurot/text/StageText.d.ts.map +1 -0
  485. package/dist/kurot/text/StageText.js +324 -0
  486. package/dist/kurot/text/StageText.js.map +1 -0
  487. package/dist/kurot/text/TextField.d.ts +149 -0
  488. package/dist/kurot/text/TextField.d.ts.map +1 -0
  489. package/dist/kurot/text/TextField.js +734 -0
  490. package/dist/kurot/text/TextField.js.map +1 -0
  491. package/dist/kurot/text/TextMeasurer.d.ts +9 -0
  492. package/dist/kurot/text/TextMeasurer.d.ts.map +1 -0
  493. package/dist/kurot/text/TextMeasurer.js +36 -0
  494. package/dist/kurot/text/TextMeasurer.js.map +1 -0
  495. package/dist/kurot/text/WordWrap.d.ts +29 -0
  496. package/dist/kurot/text/WordWrap.d.ts.map +1 -0
  497. package/dist/kurot/text/WordWrap.js +110 -0
  498. package/dist/kurot/text/WordWrap.js.map +1 -0
  499. package/dist/kurot/text/enums/HorizontalAlign.d.ts +9 -0
  500. package/dist/kurot/text/enums/HorizontalAlign.d.ts.map +1 -0
  501. package/dist/kurot/text/enums/HorizontalAlign.js +8 -0
  502. package/dist/kurot/text/enums/HorizontalAlign.js.map +1 -0
  503. package/dist/kurot/text/enums/TextFieldInputType.d.ts +7 -0
  504. package/dist/kurot/text/enums/TextFieldInputType.d.ts.map +1 -0
  505. package/dist/kurot/text/enums/TextFieldInputType.js +6 -0
  506. package/dist/kurot/text/enums/TextFieldInputType.js.map +1 -0
  507. package/dist/kurot/text/enums/TextFieldType.d.ts +6 -0
  508. package/dist/kurot/text/enums/TextFieldType.d.ts.map +1 -0
  509. package/dist/kurot/text/enums/TextFieldType.js +5 -0
  510. package/dist/kurot/text/enums/TextFieldType.js.map +1 -0
  511. package/dist/kurot/text/enums/VerticalAlign.d.ts +9 -0
  512. package/dist/kurot/text/enums/VerticalAlign.d.ts.map +1 -0
  513. package/dist/kurot/text/enums/VerticalAlign.js +8 -0
  514. package/dist/kurot/text/enums/VerticalAlign.js.map +1 -0
  515. package/dist/kurot/text/enums/index.d.ts +5 -0
  516. package/dist/kurot/text/enums/index.d.ts.map +1 -0
  517. package/dist/kurot/text/enums/index.js +5 -0
  518. package/dist/kurot/text/enums/index.js.map +1 -0
  519. package/dist/kurot/text/index.d.ts +14 -0
  520. package/dist/kurot/text/index.d.ts.map +1 -0
  521. package/dist/kurot/text/index.js +13 -0
  522. package/dist/kurot/text/index.js.map +1 -0
  523. package/dist/kurot/text/types/ITextElement.d.ts +31 -0
  524. package/dist/kurot/text/types/ITextElement.d.ts.map +1 -0
  525. package/dist/kurot/text/types/ITextElement.js +2 -0
  526. package/dist/kurot/text/types/ITextElement.js.map +1 -0
  527. package/dist/kurot/text/types/index.d.ts +2 -0
  528. package/dist/kurot/text/types/index.d.ts.map +1 -0
  529. package/dist/kurot/text/types/index.js +2 -0
  530. package/dist/kurot/text/types/index.js.map +1 -0
  531. package/dist/kurot/utils/Base64Util.d.ts +20 -0
  532. package/dist/kurot/utils/Base64Util.d.ts.map +1 -0
  533. package/dist/kurot/utils/Base64Util.js +41 -0
  534. package/dist/kurot/utils/Base64Util.js.map +1 -0
  535. package/dist/kurot/utils/ByteArray.d.ts +65 -0
  536. package/dist/kurot/utils/ByteArray.d.ts.map +1 -0
  537. package/dist/kurot/utils/ByteArray.js +300 -0
  538. package/dist/kurot/utils/ByteArray.js.map +1 -0
  539. package/dist/kurot/utils/DebugLog.d.ts +9 -0
  540. package/dist/kurot/utils/DebugLog.d.ts.map +1 -0
  541. package/dist/kurot/utils/DebugLog.js +25 -0
  542. package/dist/kurot/utils/DebugLog.js.map +1 -0
  543. package/dist/kurot/utils/FontManager.d.ts +11 -0
  544. package/dist/kurot/utils/FontManager.d.ts.map +1 -0
  545. package/dist/kurot/utils/FontManager.js +39 -0
  546. package/dist/kurot/utils/FontManager.js.map +1 -0
  547. package/dist/kurot/utils/Logger.d.ts +16 -0
  548. package/dist/kurot/utils/Logger.d.ts.map +1 -0
  549. package/dist/kurot/utils/Logger.js +26 -0
  550. package/dist/kurot/utils/Logger.js.map +1 -0
  551. package/dist/kurot/utils/NumberUtils.d.ts +15 -0
  552. package/dist/kurot/utils/NumberUtils.d.ts.map +1 -0
  553. package/dist/kurot/utils/NumberUtils.js +60 -0
  554. package/dist/kurot/utils/NumberUtils.js.map +1 -0
  555. package/dist/kurot/utils/Timer.d.ts +28 -0
  556. package/dist/kurot/utils/Timer.d.ts.map +1 -0
  557. package/dist/kurot/utils/Timer.js +67 -0
  558. package/dist/kurot/utils/Timer.js.map +1 -0
  559. package/dist/kurot/utils/index.d.ts +9 -0
  560. package/dist/kurot/utils/index.d.ts.map +1 -0
  561. package/dist/kurot/utils/index.js +9 -0
  562. package/dist/kurot/utils/index.js.map +1 -0
  563. package/dist/kurot/utils/toColorString.d.ts +2 -0
  564. package/dist/kurot/utils/toColorString.d.ts.map +1 -0
  565. package/dist/kurot/utils/toColorString.js +5 -0
  566. package/dist/kurot/utils/toColorString.js.map +1 -0
  567. package/package.json +56 -0
@@ -0,0 +1,121 @@
1
+ import { EventDispatcher } from '../events/EventDispatcher.js';
2
+ import { Event } from '../events/Event.js';
3
+ import { HTTPStatusEvent } from '../events/HTTPStatusEvent.js';
4
+ import { IOErrorEvent } from '../events/IOErrorEvent.js';
5
+ import { ProgressEvent } from '../events/ProgressEvent.js';
6
+ import { HttpMethod } from './HttpMethod.js';
7
+ import { HttpResponseType } from './HttpResponseType.js';
8
+ /**
9
+ * Event-driven XMLHttpRequest wrapper.
10
+ *
11
+ * Use the lifecycle `open()` → `setRequestHeader()` → `send()`. One instance
12
+ * may be reused by calling `open()` for each new request; doing so aborts the
13
+ * previous request and clears headers queued for it.
14
+ */
15
+ export class HttpRequest extends EventDispatcher {
16
+ // ── Instance fields ───────────────────────────────────────────────────────
17
+ /** Response body representation requested from XMLHttpRequest. */
18
+ responseType = HttpResponseType.TEXT;
19
+ /** Whether cross-origin requests include credentials. */
20
+ withCredentials = false;
21
+ /** Request timeout in milliseconds; 0 disables the browser timeout. */
22
+ timeout = 0;
23
+ _xhr;
24
+ _url = '';
25
+ _method = HttpMethod.GET;
26
+ _pendingHeaders = [];
27
+ // ── Getters ───────────────────────────────────────────────────────────────
28
+ /** Response body from the active or most recently completed request. */
29
+ get response() {
30
+ return this._xhr?.response;
31
+ }
32
+ /**
33
+ * HTTP status code from the active or most recently completed request.
34
+ * Returns 0 before completion, after abort(), or when the browser blocks the
35
+ * request before a response is available (for example, a failed CORS check).
36
+ */
37
+ get status() {
38
+ return this._xhr?.status ?? 0;
39
+ }
40
+ // ── Public methods ────────────────────────────────────────────────────────
41
+ /**
42
+ * Prepare a request URL and method.
43
+ *
44
+ * Aborts an active request and discards headers queued for the prior request.
45
+ */
46
+ open(url, method = HttpMethod.GET) {
47
+ this.abort();
48
+ this._url = url;
49
+ this._method = method;
50
+ this._pendingHeaders = [];
51
+ }
52
+ /**
53
+ * Create and send the underlying XMLHttpRequest.
54
+ *
55
+ * Queued headers are applied after the native request is opened and before
56
+ * its body is sent. Successful responses dispatch HTTP_STATUS followed by
57
+ * COMPLETE; network errors, timeouts, status 0, and status >= 400 dispatch
58
+ * IOErrorEvent.IO_ERROR.
59
+ */
60
+ send(data) {
61
+ const xhr = new XMLHttpRequest();
62
+ this._xhr = xhr;
63
+ xhr.responseType = this.responseType;
64
+ xhr.withCredentials = this.withCredentials;
65
+ if (this.timeout > 0)
66
+ xhr.timeout = this.timeout;
67
+ xhr.onload = () => {
68
+ // `load` only means the request completed — the server may still have
69
+ // responded with an error status (404, 500, ...), or the browser may
70
+ // have blocked the response before it reached the server (status 0,
71
+ // e.g. a failed CORS preflight). Treat both as failures, matching
72
+ // how fetch()-based code typically checks `response.ok`.
73
+ HTTPStatusEvent.dispatchHTTPStatusEvent(this, xhr.status);
74
+ if (xhr.status === 0 || xhr.status >= 400) {
75
+ IOErrorEvent.dispatchIOErrorEvent(this);
76
+ }
77
+ else {
78
+ this.dispatchEventWith(Event.COMPLETE);
79
+ }
80
+ };
81
+ xhr.onerror = () => {
82
+ IOErrorEvent.dispatchIOErrorEvent(this);
83
+ };
84
+ xhr.ontimeout = () => {
85
+ IOErrorEvent.dispatchIOErrorEvent(this);
86
+ };
87
+ xhr.onprogress = e => {
88
+ ProgressEvent.dispatchProgressEvent(this, ProgressEvent.PROGRESS, e.loaded, e.total);
89
+ };
90
+ xhr.open(this._method, this._url, true);
91
+ for (const header of this._pendingHeaders) {
92
+ xhr.setRequestHeader(header.name, header.value);
93
+ }
94
+ xhr.send(data);
95
+ }
96
+ /** Abort the active native request and clear its response/status accessors. */
97
+ abort() {
98
+ if (this._xhr) {
99
+ this._xhr.abort();
100
+ this._xhr = undefined;
101
+ }
102
+ }
103
+ /** Return all response headers, or an empty string when no response is available. */
104
+ getAllResponseHeaders() {
105
+ return this._xhr?.getAllResponseHeaders() ?? '';
106
+ }
107
+ /**
108
+ * Queue a request header to be sent with the next `send()` call.
109
+ *
110
+ * Must be called after `open()` and before `send()` because the underlying
111
+ * XMLHttpRequest is created lazily by `send()`.
112
+ */
113
+ setRequestHeader(header, value) {
114
+ this._pendingHeaders.push({ name: header, value });
115
+ }
116
+ /** Return a named response header, or an empty string when it is unavailable. */
117
+ getResponseHeader(header) {
118
+ return this._xhr?.getResponseHeader(header) ?? '';
119
+ }
120
+ }
121
+ //# sourceMappingURL=HttpRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HttpRequest.js","sourceRoot":"","sources":["../../../src/kurot/net/HttpRequest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Response body formats supported by HttpRequest.
3
+ *
4
+ * TEXT returns a string response; ARRAY_BUFFER returns the raw binary body.
5
+ */
6
+ export declare const HttpResponseType: {
7
+ readonly TEXT: "text";
8
+ readonly ARRAY_BUFFER: "arraybuffer";
9
+ };
10
+ /** Union of the response body formats supported by HttpRequest. */
11
+ export type HttpResponseType = (typeof HttpResponseType)[keyof typeof HttpResponseType];
12
+ //# sourceMappingURL=HttpResponseType.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HttpResponseType.d.ts","sourceRoot":"","sources":["../../../src/kurot/net/HttpResponseType.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;;CAGnB,CAAC;AAEX,mEAAmE;AACnE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,OAAO,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Response body formats supported by HttpRequest.
3
+ *
4
+ * TEXT returns a string response; ARRAY_BUFFER returns the raw binary body.
5
+ */
6
+ export const HttpResponseType = {
7
+ TEXT: 'text',
8
+ ARRAY_BUFFER: 'arraybuffer',
9
+ };
10
+ //# sourceMappingURL=HttpResponseType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HttpResponseType.js","sourceRoot":"","sources":["../../../src/kurot/net/HttpResponseType.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC/B,IAAI,EAAE,MAAM;IACZ,YAAY,EAAE,aAAa;CAClB,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { EventDispatcher } from '../events/EventDispatcher.js';
2
+ import { Event, type EventMap } from '../events/Event.js';
3
+ import { IOErrorEvent } from '../events/IOErrorEvent.js';
4
+ import { BitmapData } from '../display/texture/BitmapData.js';
5
+ export interface ImageLoaderEvents extends EventMap {
6
+ [Event.COMPLETE]: Event;
7
+ [IOErrorEvent.IO_ERROR]: IOErrorEvent;
8
+ }
9
+ /**
10
+ * Event-driven browser image loader.
11
+ *
12
+ * `load()` replaces and cancels a prior image request. `close()` detaches the
13
+ * browser handlers and clears the image source, preventing cancelled requests
14
+ * from updating data or dispatching an event later.
15
+ */
16
+ export declare class ImageLoader extends EventDispatcher<ImageLoaderEvents> {
17
+ /** Default cross-origin mode applied to newly created loaders. */
18
+ static crossOrigin?: string;
19
+ /** Bitmap data from the most recently completed image request. */
20
+ data?: BitmapData;
21
+ /** Cross-origin mode applied to the next image request, when specified. */
22
+ crossOrigin?: string;
23
+ private _img?;
24
+ /** Start loading an image URL, cancelling any previous request first. */
25
+ load(url: string): void;
26
+ /**
27
+ * Cancel an in-flight image request.
28
+ *
29
+ * The most recently loaded `data` value is retained; only the active browser
30
+ * image element and its pending callbacks are released.
31
+ */
32
+ close(): void;
33
+ }
34
+ //# sourceMappingURL=ImageLoader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageLoader.d.ts","sourceRoot":"","sources":["../../../src/kurot/net/ImageLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D,MAAM,WAAW,iBAAkB,SAAQ,QAAQ;IAClD,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IACxB,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC;CACtC;AAED;;;;;;GAMG;AACH,qBAAa,WAAY,SAAQ,eAAe,CAAC,iBAAiB,CAAC;IAGlE,kEAAkE;IAClE,OAAc,WAAW,CAAC,EAAE,MAAM,CAAC;IAInC,kEAAkE;IAC3D,IAAI,CAAC,EAAE,UAAU,CAAC;IACzB,2EAA2E;IACpE,WAAW,CAAC,EAAE,MAAM,CAA2B;IAEtD,OAAO,CAAC,IAAI,CAAC,CAAmB;IAIhC,yEAAyE;IAClE,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAmB9B;;;;;OAKG;IACI,KAAK,IAAI,IAAI;CAQpB"}
@@ -0,0 +1,54 @@
1
+ import { EventDispatcher } from '../events/EventDispatcher.js';
2
+ import { Event } from '../events/Event.js';
3
+ import { IOErrorEvent } from '../events/IOErrorEvent.js';
4
+ import { BitmapData } from '../display/texture/BitmapData.js';
5
+ /**
6
+ * Event-driven browser image loader.
7
+ *
8
+ * `load()` replaces and cancels a prior image request. `close()` detaches the
9
+ * browser handlers and clears the image source, preventing cancelled requests
10
+ * from updating data or dispatching an event later.
11
+ */
12
+ export class ImageLoader extends EventDispatcher {
13
+ // ── Static fields ─────────────────────────────────────────────────────────
14
+ /** Default cross-origin mode applied to newly created loaders. */
15
+ static crossOrigin;
16
+ // ── Instance fields ───────────────────────────────────────────────────────
17
+ /** Bitmap data from the most recently completed image request. */
18
+ data;
19
+ /** Cross-origin mode applied to the next image request, when specified. */
20
+ crossOrigin = ImageLoader.crossOrigin;
21
+ _img;
22
+ // ── Public methods ────────────────────────────────────────────────────────
23
+ /** Start loading an image URL, cancelling any previous request first. */
24
+ load(url) {
25
+ this.close();
26
+ const img = new Image();
27
+ this._img = img;
28
+ if (this.crossOrigin)
29
+ img.crossOrigin = this.crossOrigin;
30
+ img.onload = () => {
31
+ this.data = new BitmapData(img);
32
+ this.dispatchEventWith(Event.COMPLETE);
33
+ };
34
+ img.onerror = () => {
35
+ IOErrorEvent.dispatchIOErrorEvent(this);
36
+ };
37
+ img.src = url;
38
+ }
39
+ /**
40
+ * Cancel an in-flight image request.
41
+ *
42
+ * The most recently loaded `data` value is retained; only the active browser
43
+ * image element and its pending callbacks are released.
44
+ */
45
+ close() {
46
+ if (this._img) {
47
+ this._img.onload = null;
48
+ this._img.onerror = null;
49
+ this._img.src = '';
50
+ this._img = undefined;
51
+ }
52
+ }
53
+ }
54
+ //# sourceMappingURL=ImageLoader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageLoader.js","sourceRoot":"","sources":["../../../src/kurot/net/ImageLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAiB,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAO9D;;;;;;GAMG;AACH,MAAM,OAAO,WAAY,SAAQ,eAAkC;IAClE,6EAA6E;IAE7E,kEAAkE;IAC3D,MAAM,CAAC,WAAW,CAAU;IAEnC,6EAA6E;IAE7E,kEAAkE;IAC3D,IAAI,CAAc;IACzB,2EAA2E;IACpE,WAAW,GAAY,WAAW,CAAC,WAAW,CAAC;IAE9C,IAAI,CAAoB;IAEhC,6EAA6E;IAE7E,yEAAyE;IAClE,IAAI,CAAC,GAAW;QACtB,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAEhB,IAAI,IAAI,CAAC,WAAW;YAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAEzD,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE;YACjB,IAAI,CAAC,IAAI,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC,CAAC;QACF,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE;YAClB,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC;QAEF,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACI,KAAK;QACX,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACvB,CAAC;IACF,CAAC;CACD"}
@@ -0,0 +1,7 @@
1
+ export { HttpMethod } from './HttpMethod.js';
2
+ export type { HttpMethod as HttpMethodType } from './HttpMethod.js';
3
+ export { HttpResponseType } from './HttpResponseType.js';
4
+ export type { HttpResponseType as HttpResponseTypeType } from './HttpResponseType.js';
5
+ export { HttpRequest, type HttpRequestEvents } from './HttpRequest.js';
6
+ export { ImageLoader, type ImageLoaderEvents } from './ImageLoader.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/kurot/net/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,gBAAgB,IAAI,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { HttpMethod } from './HttpMethod.js';
2
+ export { HttpResponseType } from './HttpResponseType.js';
3
+ export { HttpRequest } from './HttpRequest.js';
4
+ export { ImageLoader } from './ImageLoader.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/kurot/net/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,WAAW,EAA0B,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,WAAW,EAA0B,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,25 @@
1
+ import type { StageScaleMode } from '../display/enums/StageScaleMode.js';
2
+ import type { OrientationMode } from '../display/enums/OrientationMode.js';
3
+ /**
4
+ * Configuration options for initializing the Kurot engine.
5
+ * Equivalent to Egret's `PlayerOption` + `runEgretOptions`.
6
+ */
7
+ export interface KurotOptions {
8
+ /** The canvas element to render into. */
9
+ canvas: HTMLCanvasElement;
10
+ /** Frame rate (default: 60). */
11
+ frameRate?: number;
12
+ /** Stage scale mode (default: 'showAll'). */
13
+ scaleMode?: StageScaleMode;
14
+ /** Initial content width in logical pixels. */
15
+ contentWidth?: number;
16
+ /** Initial content height in logical pixels. */
17
+ contentHeight?: number;
18
+ /** Screen orientation mode (default: 'auto'). */
19
+ orientation?: OrientationMode;
20
+ /** Maximum simultaneous touch points (default: 99). */
21
+ maxTouches?: number;
22
+ /** Background color as a CSS string (default: '#000000'). */
23
+ background?: string;
24
+ }
25
+ //# sourceMappingURL=KurotOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KurotOptions.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/KurotOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAE3E;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC5B,yCAAyC;IACzC,MAAM,EAAE,iBAAiB,CAAC;IAE1B,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,cAAc,CAAC;IAE3B,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,iDAAiD;IACjD,WAAW,CAAC,EAAE,eAAe,CAAC;IAE9B,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=KurotOptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KurotOptions.js","sourceRoot":"","sources":["../../../src/kurot/player/KurotOptions.ts"],"names":[],"mappings":""}
@@ -0,0 +1,45 @@
1
+ import { Stage } from '../display/Stage.js';
2
+ import { DisplayObject } from '../display/DisplayObject.js';
3
+ import { type Renderable } from './SystemTicker.js';
4
+ /**
5
+ * The Player ties together a Stage and a renderer.
6
+ * Automatically uses WebGL if available, falls back to Canvas 2D.
7
+ */
8
+ export declare class Player implements Renderable {
9
+ private static readonly _IDENTITY;
10
+ readonly stage: Stage;
11
+ private _isPlaying;
12
+ private _root?;
13
+ private _canvas2dBuffer?;
14
+ private _canvas2dRenderer?;
15
+ private _webglBuffer?;
16
+ private _webglRenderer?;
17
+ private _webglContext?;
18
+ private _unregisterCallbacks;
19
+ readonly perf: {
20
+ frameCount: number;
21
+ lastFrameTime: number;
22
+ fps: number;
23
+ avgFps: number;
24
+ minFps: number;
25
+ maxFps: number;
26
+ drawCalls: number;
27
+ avgDrawCalls: number;
28
+ renderTimeMs: number;
29
+ avgRenderTimeMs: number;
30
+ maxRenderTimeMs: number;
31
+ totalRenderTimeMs: number;
32
+ };
33
+ private _fpsFrames;
34
+ private _fpsLastTime;
35
+ constructor(canvas: HTMLCanvasElement, stage?: Stage);
36
+ get isWebGL(): boolean;
37
+ start(root?: DisplayObject): void;
38
+ stop(): void;
39
+ pause(): void;
40
+ /** Destroy the player and release all resources. */
41
+ destroy(): void;
42
+ updateStageSize(width: number, height: number): void;
43
+ render(_triggerByFrame: boolean, _costTicker: number): void;
44
+ }
45
+ //# sourceMappingURL=Player.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Player.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/Player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAI5D,OAAO,EAAU,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG5D;;;GAGG;AACH,qBAAa,MAAO,YAAW,UAAU;IAExC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAGjD,SAAgB,KAAK,EAAE,KAAK,CAAC;IAC7B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,KAAK,CAAC,CAAgB;IAC9B,OAAO,CAAC,eAAe,CAAC,CAAe;IACvC,OAAO,CAAC,iBAAiB,CAAC,CAAiB;IAC3C,OAAO,CAAC,YAAY,CAAC,CAAoB;IACzC,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,aAAa,CAAC,CAAqB;IAC3C,OAAO,CAAC,oBAAoB,CAAyB;IAErD,SAAgB,IAAI;;;;;gBAKN,MAAM;gBACN,MAAM;;;;;;;MAOlB;IAEF,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,YAAY,CAAqB;gBAGtB,MAAM,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,KAAK;IA4C3D,IAAW,OAAO,IAAI,OAAO,CAE5B;IAEM,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI;IAWjC,IAAI,IAAI,IAAI;IAIZ,KAAK,IAAI,IAAI;IAMpB,oDAAoD;IAC7C,OAAO,IAAI,IAAI;IAWf,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAWpD,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;CAoClE"}
@@ -0,0 +1,158 @@
1
+ import { Stage } from '../display/Stage.js';
2
+ import { DisplayObject } from '../display/DisplayObject.js';
3
+ import { DisplayObjectContainer } from '../display/DisplayObjectContainer.js';
4
+ import { Matrix } from '../geom/Matrix.js';
5
+ import { RenderBuffer, CanvasRenderer } from './canvas/index.js';
6
+ import { ticker } from './SystemTicker.js';
7
+ import { WebGLRenderContext, WebGLRenderBuffer, WebGLRenderer } from './webgl/index.js';
8
+ /**
9
+ * The Player ties together a Stage and a renderer.
10
+ * Automatically uses WebGL if available, falls back to Canvas 2D.
11
+ */
12
+ export class Player {
13
+ // ── Static fields ─────────────────────────────────────────────────────────
14
+ static _IDENTITY = new Matrix();
15
+ // ── Instance fields ───────────────────────────────────────────────────────
16
+ stage;
17
+ _isPlaying = false;
18
+ _root;
19
+ _canvas2dBuffer;
20
+ _canvas2dRenderer;
21
+ _webglBuffer;
22
+ _webglRenderer;
23
+ _webglContext;
24
+ _unregisterCallbacks = [];
25
+ perf = {
26
+ frameCount: 0,
27
+ lastFrameTime: 0,
28
+ fps: 0,
29
+ avgFps: 0,
30
+ minFps: 0,
31
+ maxFps: 0,
32
+ drawCalls: 0,
33
+ avgDrawCalls: 0,
34
+ renderTimeMs: 0,
35
+ avgRenderTimeMs: 0,
36
+ maxRenderTimeMs: 0,
37
+ totalRenderTimeMs: 0,
38
+ };
39
+ _fpsFrames = 0;
40
+ _fpsLastTime = performance.now();
41
+ // ── Constructor ───────────────────────────────────────────────────────────
42
+ constructor(canvas, stage) {
43
+ this.stage = stage ?? new Stage();
44
+ try {
45
+ this._webglContext = new WebGLRenderContext(canvas);
46
+ this._webglBuffer = new WebGLRenderBuffer(this._webglContext, canvas.width || 1, canvas.height || 1, true);
47
+ this._webglRenderer = new WebGLRenderer();
48
+ // Wire up renderer hooks. The engine is single-Player by design:
49
+ // Player assigns these static hooks directly and clears them in
50
+ // `destroy()`. There is no multi-Player listener registry.
51
+ const renderer = this._webglRenderer;
52
+ DisplayObject.$onStructureChange = () => renderer.markStructureDirty();
53
+ DisplayObjectContainer.$onContainerStructureChange = owner => renderer.markStructureDirty(owner);
54
+ DisplayObject.$onRenderableDirty = obj => renderer.markRenderableDirty(obj);
55
+ this._unregisterCallbacks.push(
56
+ // After context loss + restore, all WebGL textures are invalid and
57
+ // the instruction set contains stale texture references. Force a
58
+ // full rebuild so the next render re-uploads everything.
59
+ this._webglContext.addContextRestoredListener(() => renderer.markStructureDirty()));
60
+ return;
61
+ }
62
+ catch {
63
+ // WebGL init failed — fall through to Canvas 2D. Drop references so the
64
+ // half-constructed context can be GC'd; the GL resources themselves are
65
+ // reclaimed by the browser when the canvas is dropped.
66
+ this._webglContext = undefined;
67
+ this._webglBuffer = undefined;
68
+ }
69
+ const ctx = canvas.getContext('2d');
70
+ if (!ctx)
71
+ throw new Error('Failed to get Canvas 2D context');
72
+ this._canvas2dBuffer = new RenderBuffer();
73
+ this._canvas2dBuffer.surface = canvas;
74
+ this._canvas2dBuffer.context = ctx;
75
+ this._canvas2dRenderer = new CanvasRenderer();
76
+ }
77
+ get isWebGL() {
78
+ return !!this._webglRenderer;
79
+ }
80
+ start(root) {
81
+ if (this._isPlaying)
82
+ return;
83
+ this._isPlaying = true;
84
+ if (root && !this._root) {
85
+ this._root = root;
86
+ this.stage.addChild(root);
87
+ }
88
+ ticker.addPlayer(this);
89
+ ticker.start();
90
+ }
91
+ stop() {
92
+ this.pause();
93
+ }
94
+ pause() {
95
+ if (!this._isPlaying)
96
+ return;
97
+ this._isPlaying = false;
98
+ ticker.removePlayer(this);
99
+ }
100
+ /** Destroy the player and release all resources. */
101
+ destroy() {
102
+ this.pause();
103
+ for (const fn of this._unregisterCallbacks)
104
+ fn();
105
+ this._unregisterCallbacks = [];
106
+ // Single-Player engine: clear the static renderer hooks so they stop
107
+ // notifying a renderer whose owner is gone.
108
+ DisplayObject.$onStructureChange = undefined;
109
+ DisplayObject.$onRenderableDirty = undefined;
110
+ DisplayObjectContainer.$onContainerStructureChange = undefined;
111
+ }
112
+ updateStageSize(width, height) {
113
+ this.stage.resize(width, height);
114
+ if (this._webglBuffer) {
115
+ this._webglBuffer.resize(width, height);
116
+ }
117
+ else {
118
+ this._canvas2dBuffer?.resize(width, height);
119
+ }
120
+ }
121
+ // ── Public methods (Renderable) ───────────────────────────────────────────
122
+ render(_triggerByFrame, _costTicker) {
123
+ const t0 = performance.now();
124
+ if (this._webglBuffer && this._webglRenderer) {
125
+ this._webglBuffer.clear();
126
+ this.perf.drawCalls = this._webglRenderer.render(this.stage, this._webglBuffer, Player._IDENTITY);
127
+ }
128
+ else if (this._canvas2dBuffer && this._canvas2dRenderer) {
129
+ this._canvas2dBuffer.clear();
130
+ this.perf.drawCalls = this._canvas2dRenderer.render(this.stage, this._canvas2dBuffer);
131
+ }
132
+ const renderTime = performance.now() - t0;
133
+ this.perf.renderTimeMs = renderTime;
134
+ this.perf.totalRenderTimeMs += renderTime;
135
+ if (renderTime > this.perf.maxRenderTimeMs)
136
+ this.perf.maxRenderTimeMs = renderTime;
137
+ this.perf.frameCount++;
138
+ this._fpsFrames++;
139
+ const now = performance.now();
140
+ const elapsed = now - this._fpsLastTime;
141
+ if (elapsed >= 1000) {
142
+ const fps = (this._fpsFrames / elapsed) * 1000;
143
+ this.perf.fps = fps;
144
+ if (fps < this.perf.minFps)
145
+ this.perf.minFps = fps;
146
+ if (fps > this.perf.maxFps)
147
+ this.perf.maxFps = fps;
148
+ this.perf.avgFps =
149
+ this.perf.frameCount /
150
+ (this.perf.totalRenderTimeMs / 1000 + (now - this._fpsLastTime + elapsed) / 1000) || fps;
151
+ this._fpsFrames = 0;
152
+ this._fpsLastTime = now;
153
+ }
154
+ this.perf.avgDrawCalls = this.perf.drawCalls;
155
+ this.perf.avgRenderTimeMs = this.perf.totalRenderTimeMs / this.perf.frameCount;
156
+ }
157
+ }
158
+ //# sourceMappingURL=Player.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Player.js","sourceRoot":"","sources":["../../../src/kurot/player/Player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAmB,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAExF;;;GAGG;AACH,MAAM,OAAO,MAAM;IAClB,6EAA6E;IACrE,MAAM,CAAU,SAAS,GAAG,IAAI,MAAM,EAAE,CAAC;IAEjD,6EAA6E;IAC7D,KAAK,CAAQ;IACrB,UAAU,GAAG,KAAK,CAAC;IACnB,KAAK,CAAiB;IACtB,eAAe,CAAgB;IAC/B,iBAAiB,CAAkB;IACnC,YAAY,CAAqB;IACjC,cAAc,CAAiB;IAC/B,aAAa,CAAsB;IACnC,oBAAoB,GAAsB,EAAE,CAAC;IAErC,IAAI,GAAG;QACtB,UAAU,EAAE,CAAC;QACb,aAAa,EAAE,CAAC;QAChB,GAAG,EAAE,CAAC;QACN,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAW;QACnB,MAAM,EAAE,CAAW;QACnB,SAAS,EAAE,CAAC;QACZ,YAAY,EAAE,CAAC;QACf,YAAY,EAAE,CAAC;QACf,eAAe,EAAE,CAAC;QAClB,eAAe,EAAE,CAAC;QAClB,iBAAiB,EAAE,CAAC;KACpB,CAAC;IAEM,UAAU,GAAG,CAAC,CAAC;IACf,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAEzC,6EAA6E;IAC7E,YAAmB,MAAyB,EAAE,KAAa;QAC1D,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,IAAI,KAAK,EAAE,CAAC;QAElC,IAAI,CAAC;YACJ,IAAI,CAAC,aAAa,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;YACpD,IAAI,CAAC,YAAY,GAAG,IAAI,iBAAiB,CACxC,IAAI,CAAC,aAAa,EAClB,MAAM,CAAC,KAAK,IAAI,CAAC,EACjB,MAAM,CAAC,MAAM,IAAI,CAAC,EAClB,IAAI,CACJ,CAAC;YACF,IAAI,CAAC,cAAc,GAAG,IAAI,aAAa,EAAE,CAAC;YAE1C,iEAAiE;YACjE,gEAAgE;YAChE,2DAA2D;YAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC;YACrC,aAAa,CAAC,kBAAkB,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;YACvE,sBAAsB,CAAC,2BAA2B,GAAG,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACjG,aAAa,CAAC,kBAAkB,GAAG,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;YAC5E,IAAI,CAAC,oBAAoB,CAAC,IAAI;YAC7B,mEAAmE;YACnE,iEAAiE;YACjE,yDAAyD;YACzD,IAAI,CAAC,aAAa,CAAC,0BAA0B,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAClF,CAAC;YAEF,OAAO;QACR,CAAC;QAAC,MAAM,CAAC;YACR,wEAAwE;YACxE,wEAAwE;YACxE,uDAAuD;YACvD,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;YAC/B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAC/B,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QAC7D,IAAI,CAAC,eAAe,GAAG,IAAI,YAAY,EAAE,CAAC;QACzC,IAAI,CAAC,eAAkD,CAAC,OAAO,GAAG,MAAM,CAAC;QACzE,IAAI,CAAC,eAAyD,CAAC,OAAO,GAAG,GAAG,CAAC;QAC9E,IAAI,CAAC,iBAAiB,GAAG,IAAI,cAAc,EAAE,CAAC;IAC/C,CAAC;IAED,IAAW,OAAO;QACjB,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC;IAC9B,CAAC;IAEM,KAAK,CAAC,IAAoB;QAChC,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAC5B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACvB,MAAM,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC;IAEM,IAAI;QACV,IAAI,CAAC,KAAK,EAAE,CAAC;IACd,CAAC;IAEM,KAAK;QACX,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAC7B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,oDAAoD;IAC7C,OAAO;QACb,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,oBAAoB;YAAE,EAAE,EAAE,CAAC;QACjD,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAC/B,qEAAqE;QACrE,4CAA4C;QAC5C,aAAa,CAAC,kBAAkB,GAAG,SAAS,CAAC;QAC7C,aAAa,CAAC,kBAAkB,GAAG,SAAS,CAAC;QAC7C,sBAAsB,CAAC,2BAA2B,GAAG,SAAS,CAAC;IAChE,CAAC;IAEM,eAAe,CAAC,KAAa,EAAE,MAAc;QACnD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;IACF,CAAC;IAED,6EAA6E;IAEtE,MAAM,CAAC,eAAwB,EAAE,WAAmB;QAC1D,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9C,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACnG,CAAC;aAAM,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3D,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,UAAU,CAAC;QAC1C,IAAI,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe;YAAE,IAAI,CAAC,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC;QAEnF,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QACvB,IAAI,CAAC,UAAU,EAAE,CAAC;QAElB,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC;QACxC,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;YAC/C,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;YACpB,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;YACnD,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;YACnD,IAAI,CAAC,IAAI,CAAC,MAAM;gBACf,IAAI,CAAC,IAAI,CAAC,UAAU;oBACnB,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC;YAC3F,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;QACzB,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;IAChF,CAAC"}
@@ -0,0 +1,33 @@
1
+ import type { DisplayObject } from '../display/DisplayObject.js';
2
+ import type { InstructionSet } from './webgl/InstructionSet.js';
3
+ /**
4
+ * A RenderPipe handles one category of DisplayObject (Bitmap, Graphics, Mesh…).
5
+ *
6
+ * Inspired by Pixi.js 8's RenderPipe interface.
7
+ *
8
+ * Lifecycle per frame:
9
+ * 1. If InstructionSet.structureDirty:
10
+ * pipe.addToInstructionSet(obj, set) — build instruction from scratch
11
+ * 2. Else if obj.$renderDirty:
12
+ * pipe.updateRenderable(obj) — patch GPU data only
13
+ * 3. Always:
14
+ * pipe.execute(instruction, ...) — issue the actual draw call
15
+ */
16
+ export interface RenderPipe<T extends DisplayObject = DisplayObject> {
17
+ /**
18
+ * Build and append an Instruction for `renderable` into `set`.
19
+ * Called during the build phase when structureDirty is true.
20
+ */
21
+ addToInstructionSet(renderable: T, set: InstructionSet): void;
22
+ /**
23
+ * Update GPU-side data for `renderable` without rebuilding the instruction.
24
+ * Called during the update phase when only data changed (not structure).
25
+ */
26
+ updateRenderable(renderable: T): void;
27
+ /**
28
+ * Optional cleanup when a renderable is removed from the scene.
29
+ * Use this to release GPU textures / cached buffers.
30
+ */
31
+ destroyRenderable?(renderable: T): void;
32
+ }
33
+ //# sourceMappingURL=RenderPipe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderPipe.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/RenderPipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa;IAClE;;;OAGG;IACH,mBAAmB,CAAC,UAAU,EAAE,CAAC,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAAC;IAE9D;;;OAGG;IACH,gBAAgB,CAAC,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC;IAEtC;;;OAGG;IACH,iBAAiB,CAAC,CAAC,UAAU,EAAE,CAAC,GAAG,IAAI,CAAC;CACxC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RenderPipe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RenderPipe.js","sourceRoot":"","sources":["../../../src/kurot/player/RenderPipe.ts"],"names":[],"mappings":""}
@@ -0,0 +1,29 @@
1
+ import { Player } from './Player.js';
2
+ import { TouchHandler } from './TouchHandler.js';
3
+ export interface StageDisplaySize {
4
+ stageWidth: number;
5
+ stageHeight: number;
6
+ displayWidth: number;
7
+ displayHeight: number;
8
+ }
9
+ /**
10
+ * Manages the relationship between the browser viewport, the canvas element,
11
+ * and the Stage logical size. Handles resize events and applies the configured
12
+ * StageScaleMode.
13
+ *
14
+ * Equivalent to Egret's `sys.Screen` + `DefaultScreenAdapter`.
15
+ */
16
+ export declare class ScreenAdapter {
17
+ private _player;
18
+ private _canvas;
19
+ private _touchHandler;
20
+ private _contentWidth;
21
+ private _contentHeight;
22
+ constructor(player: Player, canvas: HTMLCanvasElement, touchHandler: TouchHandler, contentWidth: number, contentHeight: number);
23
+ setContentSize(width: number, height: number): void;
24
+ updateScreenSize(): void;
25
+ dispose(): void;
26
+ private onResize;
27
+ private calculateStageSize;
28
+ }
29
+ //# sourceMappingURL=ScreenAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScreenAdapter.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/ScreenAdapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,MAAM,WAAW,gBAAgB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;GAMG;AACH,qBAAa,aAAa;IAGzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,aAAa,CAAe;IACpC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,cAAc,CAAS;gBAK9B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM;IAef,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAMnD,gBAAgB,IAAI,IAAI;IAwCxB,OAAO,IAAI,IAAI;IAMtB,OAAO,CAAC,QAAQ,CAEd;IAEF,OAAO,CAAC,kBAAkB;CAsD1B"}