@kurot/core 1.0.14 → 1.0.16

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 (290) hide show
  1. package/README.md +96 -4
  2. package/dist/kurot/display/Bitmap.d.ts +0 -1
  3. package/dist/kurot/display/Bitmap.d.ts.map +1 -1
  4. package/dist/kurot/display/Bitmap.js +0 -3
  5. package/dist/kurot/display/Bitmap.js.map +1 -1
  6. package/dist/kurot/display/DisplayObject.d.ts +16 -35
  7. package/dist/kurot/display/DisplayObject.d.ts.map +1 -1
  8. package/dist/kurot/display/DisplayObject.js +6 -41
  9. package/dist/kurot/display/DisplayObject.js.map +1 -1
  10. package/dist/kurot/display/DisplayObjectContainer.d.ts +0 -10
  11. package/dist/kurot/display/DisplayObjectContainer.d.ts.map +1 -1
  12. package/dist/kurot/display/DisplayObjectContainer.js +0 -14
  13. package/dist/kurot/display/DisplayObjectContainer.js.map +1 -1
  14. package/dist/kurot/display/Graphics.d.ts +0 -1
  15. package/dist/kurot/display/Graphics.d.ts.map +1 -1
  16. package/dist/kurot/display/Graphics.js +0 -3
  17. package/dist/kurot/display/Graphics.js.map +1 -1
  18. package/dist/kurot/display/Mesh.d.ts +9 -3
  19. package/dist/kurot/display/Mesh.d.ts.map +1 -1
  20. package/dist/kurot/display/Mesh.js +9 -3
  21. package/dist/kurot/display/Mesh.js.map +1 -1
  22. package/dist/kurot/display/Stage.d.ts +0 -1
  23. package/dist/kurot/display/Stage.d.ts.map +1 -1
  24. package/dist/kurot/display/Stage.js +0 -2
  25. package/dist/kurot/display/Stage.js.map +1 -1
  26. package/dist/kurot/display/enums/BlendMode.d.ts.map +1 -1
  27. package/dist/kurot/display/enums/BlendMode.js +0 -2
  28. package/dist/kurot/display/enums/BlendMode.js.map +1 -1
  29. package/dist/kurot/display/texture/BitmapData.d.ts +1 -0
  30. package/dist/kurot/display/texture/BitmapData.d.ts.map +1 -1
  31. package/dist/kurot/display/texture/BitmapData.js +1 -0
  32. package/dist/kurot/display/texture/BitmapData.js.map +1 -1
  33. package/dist/kurot/display/texture/RenderTexture.d.ts +0 -1
  34. package/dist/kurot/display/texture/RenderTexture.d.ts.map +1 -1
  35. package/dist/kurot/display/texture/RenderTexture.js +0 -4
  36. package/dist/kurot/display/texture/RenderTexture.js.map +1 -1
  37. package/dist/kurot/display/texture/Texture.d.ts +9 -3
  38. package/dist/kurot/display/texture/Texture.d.ts.map +1 -1
  39. package/dist/kurot/display/texture/Texture.js +9 -3
  40. package/dist/kurot/display/texture/Texture.js.map +1 -1
  41. package/dist/kurot/events/Event.d.ts +3 -1
  42. package/dist/kurot/events/Event.d.ts.map +1 -1
  43. package/dist/kurot/events/Event.js +0 -2
  44. package/dist/kurot/events/Event.js.map +1 -1
  45. package/dist/kurot/events/EventDispatcher.d.ts.map +1 -1
  46. package/dist/kurot/events/EventDispatcher.js +0 -2
  47. package/dist/kurot/events/EventDispatcher.js.map +1 -1
  48. package/dist/kurot/events/TimerEvent.d.ts +0 -1
  49. package/dist/kurot/events/TimerEvent.d.ts.map +1 -1
  50. package/dist/kurot/events/TimerEvent.js +0 -1
  51. package/dist/kurot/events/TimerEvent.js.map +1 -1
  52. package/dist/kurot/events/TouchEvent.d.ts +0 -1
  53. package/dist/kurot/events/TouchEvent.d.ts.map +1 -1
  54. package/dist/kurot/events/TouchEvent.js +0 -1
  55. package/dist/kurot/events/TouchEvent.js.map +1 -1
  56. package/dist/kurot/filters/BlurFilter.d.ts.map +1 -1
  57. package/dist/kurot/filters/BlurFilter.js +0 -3
  58. package/dist/kurot/filters/BlurFilter.js.map +1 -1
  59. package/dist/kurot/filters/DropShadowFilter.d.ts.map +1 -1
  60. package/dist/kurot/filters/DropShadowFilter.js +0 -2
  61. package/dist/kurot/filters/DropShadowFilter.js.map +1 -1
  62. package/dist/kurot/geom/Matrix.d.ts +3 -9
  63. package/dist/kurot/geom/Matrix.d.ts.map +1 -1
  64. package/dist/kurot/geom/Matrix.js +3 -9
  65. package/dist/kurot/geom/Matrix.js.map +1 -1
  66. package/dist/kurot/geom/Point.d.ts +3 -1
  67. package/dist/kurot/geom/Point.d.ts.map +1 -1
  68. package/dist/kurot/geom/Point.js +3 -1
  69. package/dist/kurot/geom/Point.js.map +1 -1
  70. package/dist/kurot/geom/Rectangle.d.ts +3 -3
  71. package/dist/kurot/geom/Rectangle.d.ts.map +1 -1
  72. package/dist/kurot/geom/Rectangle.js +3 -3
  73. package/dist/kurot/geom/Rectangle.js.map +1 -1
  74. package/dist/kurot/media/Sound.d.ts.map +1 -1
  75. package/dist/kurot/media/Sound.js +1 -8
  76. package/dist/kurot/media/Sound.js.map +1 -1
  77. package/dist/kurot/media/SoundChannel.d.ts +0 -1
  78. package/dist/kurot/media/SoundChannel.d.ts.map +1 -1
  79. package/dist/kurot/media/SoundChannel.js +0 -3
  80. package/dist/kurot/media/SoundChannel.js.map +1 -1
  81. package/dist/kurot/player/InstructionSet.d.ts +4 -17
  82. package/dist/kurot/player/InstructionSet.d.ts.map +1 -1
  83. package/dist/kurot/player/InstructionSet.js +3 -20
  84. package/dist/kurot/player/InstructionSet.js.map +1 -1
  85. package/dist/kurot/player/KurotOptions.d.ts +24 -9
  86. package/dist/kurot/player/KurotOptions.d.ts.map +1 -1
  87. package/dist/kurot/player/Player.d.ts +15 -9
  88. package/dist/kurot/player/Player.d.ts.map +1 -1
  89. package/dist/kurot/player/Player.js +20 -22
  90. package/dist/kurot/player/Player.js.map +1 -1
  91. package/dist/kurot/player/RenderBuffer.d.ts +4 -14
  92. package/dist/kurot/player/RenderBuffer.d.ts.map +1 -1
  93. package/dist/kurot/player/RenderContext.d.ts +13 -29
  94. package/dist/kurot/player/RenderContext.d.ts.map +1 -1
  95. package/dist/kurot/player/RenderPipe.d.ts +3 -13
  96. package/dist/kurot/player/RenderPipe.d.ts.map +1 -1
  97. package/dist/kurot/player/ScreenAdapter.d.ts +6 -5
  98. package/dist/kurot/player/ScreenAdapter.d.ts.map +1 -1
  99. package/dist/kurot/player/ScreenAdapter.js +6 -15
  100. package/dist/kurot/player/ScreenAdapter.js.map +1 -1
  101. package/dist/kurot/player/SystemTicker.d.ts +13 -9
  102. package/dist/kurot/player/SystemTicker.d.ts.map +1 -1
  103. package/dist/kurot/player/SystemTicker.js +10 -13
  104. package/dist/kurot/player/SystemTicker.js.map +1 -1
  105. package/dist/kurot/player/TouchHandler.d.ts +3 -4
  106. package/dist/kurot/player/TouchHandler.d.ts.map +1 -1
  107. package/dist/kurot/player/TouchHandler.js +3 -12
  108. package/dist/kurot/player/TouchHandler.js.map +1 -1
  109. package/dist/kurot/player/canvas/CanvasBuffer.d.ts.map +1 -1
  110. package/dist/kurot/player/canvas/CanvasBuffer.js +0 -3
  111. package/dist/kurot/player/canvas/CanvasBuffer.js.map +1 -1
  112. package/dist/kurot/player/canvas/CanvasRenderer.d.ts +9 -17
  113. package/dist/kurot/player/canvas/CanvasRenderer.d.ts.map +1 -1
  114. package/dist/kurot/player/canvas/CanvasRenderer.js +182 -74
  115. package/dist/kurot/player/canvas/CanvasRenderer.js.map +1 -1
  116. package/dist/kurot/player/canvas/DisplayList.d.ts +1 -5
  117. package/dist/kurot/player/canvas/DisplayList.d.ts.map +1 -1
  118. package/dist/kurot/player/canvas/DisplayList.js +1 -5
  119. package/dist/kurot/player/canvas/DisplayList.js.map +1 -1
  120. package/dist/kurot/player/createPlayer.d.ts.map +1 -1
  121. package/dist/kurot/player/createPlayer.js +0 -2
  122. package/dist/kurot/player/createPlayer.js.map +1 -1
  123. package/dist/kurot/player/pipes/BitmapPipe.d.ts +3 -9
  124. package/dist/kurot/player/pipes/BitmapPipe.d.ts.map +1 -1
  125. package/dist/kurot/player/pipes/BitmapPipe.js +19 -33
  126. package/dist/kurot/player/pipes/BitmapPipe.js.map +1 -1
  127. package/dist/kurot/player/pipes/FilterPipe.d.ts +11 -28
  128. package/dist/kurot/player/pipes/FilterPipe.d.ts.map +1 -1
  129. package/dist/kurot/player/pipes/FilterPipe.js +8 -51
  130. package/dist/kurot/player/pipes/FilterPipe.js.map +1 -1
  131. package/dist/kurot/player/pipes/GraphicsPipe.d.ts +2 -7
  132. package/dist/kurot/player/pipes/GraphicsPipe.d.ts.map +1 -1
  133. package/dist/kurot/player/pipes/GraphicsPipe.js +28 -38
  134. package/dist/kurot/player/pipes/GraphicsPipe.js.map +1 -1
  135. package/dist/kurot/player/pipes/MaskPipe.d.ts +9 -14
  136. package/dist/kurot/player/pipes/MaskPipe.d.ts.map +1 -1
  137. package/dist/kurot/player/pipes/MaskPipe.js +24 -46
  138. package/dist/kurot/player/pipes/MaskPipe.js.map +1 -1
  139. package/dist/kurot/player/pipes/MeshPipe.d.ts +4 -1
  140. package/dist/kurot/player/pipes/MeshPipe.d.ts.map +1 -1
  141. package/dist/kurot/player/pipes/MeshPipe.js +20 -22
  142. package/dist/kurot/player/pipes/MeshPipe.js.map +1 -1
  143. package/dist/kurot/player/pipes/ParticlePipe.d.ts +1 -2
  144. package/dist/kurot/player/pipes/ParticlePipe.d.ts.map +1 -1
  145. package/dist/kurot/player/pipes/ParticlePipe.js +6 -14
  146. package/dist/kurot/player/pipes/ParticlePipe.js.map +1 -1
  147. package/dist/kurot/player/pipes/TextPipe.d.ts +3 -23
  148. package/dist/kurot/player/pipes/TextPipe.d.ts.map +1 -1
  149. package/dist/kurot/player/pipes/TextPipe.js +31 -74
  150. package/dist/kurot/player/pipes/TextPipe.js.map +1 -1
  151. package/dist/kurot/player/webgl/MultiTextureBatcher.d.ts +1 -12
  152. package/dist/kurot/player/webgl/MultiTextureBatcher.d.ts.map +1 -1
  153. package/dist/kurot/player/webgl/MultiTextureBatcher.js +2 -11
  154. package/dist/kurot/player/webgl/MultiTextureBatcher.js.map +1 -1
  155. package/dist/kurot/player/webgl/WebGLDrawCmdManager.d.ts +4 -4
  156. package/dist/kurot/player/webgl/WebGLDrawCmdManager.d.ts.map +1 -1
  157. package/dist/kurot/player/webgl/WebGLDrawCmdManager.js +11 -10
  158. package/dist/kurot/player/webgl/WebGLDrawCmdManager.js.map +1 -1
  159. package/dist/kurot/player/webgl/WebGLProgram.d.ts.map +1 -1
  160. package/dist/kurot/player/webgl/WebGLProgram.js.map +1 -1
  161. package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts +2 -0
  162. package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts.map +1 -1
  163. package/dist/kurot/player/webgl/WebGLRenderBuffer.js +9 -6
  164. package/dist/kurot/player/webgl/WebGLRenderBuffer.js.map +1 -1
  165. package/dist/kurot/player/webgl/WebGLRenderContext.d.ts +16 -45
  166. package/dist/kurot/player/webgl/WebGLRenderContext.d.ts.map +1 -1
  167. package/dist/kurot/player/webgl/WebGLRenderContext.js +40 -120
  168. package/dist/kurot/player/webgl/WebGLRenderContext.js.map +1 -1
  169. package/dist/kurot/player/webgl/WebGLRenderTarget.d.ts +2 -0
  170. package/dist/kurot/player/webgl/WebGLRenderTarget.d.ts.map +1 -1
  171. package/dist/kurot/player/webgl/WebGLRenderTarget.js +6 -0
  172. package/dist/kurot/player/webgl/WebGLRenderTarget.js.map +1 -1
  173. package/dist/kurot/player/webgl/WebGLRenderer.d.ts +3 -147
  174. package/dist/kurot/player/webgl/WebGLRenderer.d.ts.map +1 -1
  175. package/dist/kurot/player/webgl/WebGLRenderer.js +6 -210
  176. package/dist/kurot/player/webgl/WebGLRenderer.js.map +1 -1
  177. package/dist/kurot/player/webgl/WebGLUtils.d.ts +4 -4
  178. package/dist/kurot/player/webgl/WebGLUtils.d.ts.map +1 -1
  179. package/dist/kurot/player/webgl/WebGLUtils.js +3 -2
  180. package/dist/kurot/player/webgl/WebGLUtils.js.map +1 -1
  181. package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts +6 -2
  182. package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts.map +1 -1
  183. package/dist/kurot/player/webgl/WebGLVertexArrayObject.js +6 -11
  184. package/dist/kurot/player/webgl/WebGLVertexArrayObject.js.map +1 -1
  185. package/dist/kurot/player/webgl/shaders/ShaderLib.d.ts +1 -2
  186. package/dist/kurot/player/webgl/shaders/ShaderLib.d.ts.map +1 -1
  187. package/dist/kurot/player/webgl/shaders/ShaderLib.js +1 -6
  188. package/dist/kurot/player/webgl/shaders/ShaderLib.js.map +1 -1
  189. package/dist/kurot/player/webgl/shaders/ShaderLib2.d.ts +1 -2
  190. package/dist/kurot/player/webgl/shaders/ShaderLib2.d.ts.map +1 -1
  191. package/dist/kurot/player/webgl/shaders/ShaderLib2.js +1 -13
  192. package/dist/kurot/player/webgl/shaders/ShaderLib2.js.map +1 -1
  193. package/dist/kurot/player/webgl/shaders/index.d.ts.map +1 -1
  194. package/dist/kurot/player/webgl/shaders/index.js +0 -2
  195. package/dist/kurot/player/webgl/shaders/index.js.map +1 -1
  196. package/dist/kurot/resource/Resource.d.ts +1 -1
  197. package/dist/kurot/resource/Resource.d.ts.map +1 -1
  198. package/dist/kurot/resource/Resource.js +1 -12
  199. package/dist/kurot/resource/Resource.js.map +1 -1
  200. package/dist/kurot/resource/ResourceEvent.d.ts +15 -5
  201. package/dist/kurot/resource/ResourceEvent.d.ts.map +1 -1
  202. package/dist/kurot/resource/ResourceLoader.d.ts +15 -24
  203. package/dist/kurot/resource/ResourceLoader.d.ts.map +1 -1
  204. package/dist/kurot/resource/ResourceLoader.js +17 -35
  205. package/dist/kurot/resource/ResourceLoader.js.map +1 -1
  206. package/dist/kurot/resource/analyzers/AnalyzerBase.d.ts +3 -4
  207. package/dist/kurot/resource/analyzers/AnalyzerBase.d.ts.map +1 -1
  208. package/dist/kurot/resource/analyzers/AnalyzerBase.js +3 -5
  209. package/dist/kurot/resource/analyzers/AnalyzerBase.js.map +1 -1
  210. package/dist/kurot/resource/analyzers/ImageAnalyzer.d.ts.map +1 -1
  211. package/dist/kurot/resource/analyzers/ImageAnalyzer.js +0 -1
  212. package/dist/kurot/resource/analyzers/ImageAnalyzer.js.map +1 -1
  213. package/dist/kurot/resource/analyzers/SheetAnalyzer.d.ts +6 -5
  214. package/dist/kurot/resource/analyzers/SheetAnalyzer.d.ts.map +1 -1
  215. package/dist/kurot/resource/analyzers/SheetAnalyzer.js +6 -12
  216. package/dist/kurot/resource/analyzers/SheetAnalyzer.js.map +1 -1
  217. package/dist/kurot/resource/analyzers/SoundAnalyzer.d.ts.map +1 -1
  218. package/dist/kurot/resource/analyzers/SoundAnalyzer.js +0 -1
  219. package/dist/kurot/resource/analyzers/SoundAnalyzer.js.map +1 -1
  220. package/dist/kurot/resource/index.d.ts.map +1 -1
  221. package/dist/kurot/resource/index.js +0 -3
  222. package/dist/kurot/resource/index.js.map +1 -1
  223. package/dist/kurot/system/Capabilities.d.ts +11 -13
  224. package/dist/kurot/system/Capabilities.d.ts.map +1 -1
  225. package/dist/kurot/system/Capabilities.js +12 -18
  226. package/dist/kurot/system/Capabilities.js.map +1 -1
  227. package/dist/kurot/text/BitmapFont.d.ts +0 -1
  228. package/dist/kurot/text/BitmapFont.d.ts.map +1 -1
  229. package/dist/kurot/text/BitmapFont.js +0 -2
  230. package/dist/kurot/text/BitmapFont.js.map +1 -1
  231. package/dist/kurot/text/BitmapText.d.ts +0 -5
  232. package/dist/kurot/text/BitmapText.d.ts.map +1 -1
  233. package/dist/kurot/text/BitmapText.js +0 -6
  234. package/dist/kurot/text/BitmapText.js.map +1 -1
  235. package/dist/kurot/text/HtmlTextParser.d.ts +3 -1
  236. package/dist/kurot/text/HtmlTextParser.d.ts.map +1 -1
  237. package/dist/kurot/text/HtmlTextParser.js +3 -1
  238. package/dist/kurot/text/HtmlTextParser.js.map +1 -1
  239. package/dist/kurot/text/InputController.d.ts.map +1 -1
  240. package/dist/kurot/text/InputController.js +0 -2
  241. package/dist/kurot/text/InputController.js.map +1 -1
  242. package/dist/kurot/text/StageText.d.ts +1 -20
  243. package/dist/kurot/text/StageText.d.ts.map +1 -1
  244. package/dist/kurot/text/StageText.js +2 -46
  245. package/dist/kurot/text/StageText.js.map +1 -1
  246. package/dist/kurot/text/TextField.d.ts +0 -12
  247. package/dist/kurot/text/TextField.d.ts.map +1 -1
  248. package/dist/kurot/text/TextField.js +0 -41
  249. package/dist/kurot/text/TextField.js.map +1 -1
  250. package/dist/kurot/text/WordWrap.d.ts +0 -1
  251. package/dist/kurot/text/WordWrap.d.ts.map +1 -1
  252. package/dist/kurot/text/WordWrap.js +0 -3
  253. package/dist/kurot/text/WordWrap.js.map +1 -1
  254. package/dist/kurot/utils/Base64Util.d.ts +1 -6
  255. package/dist/kurot/utils/Base64Util.d.ts.map +1 -1
  256. package/dist/kurot/utils/Base64Util.js +1 -7
  257. package/dist/kurot/utils/Base64Util.js.map +1 -1
  258. package/dist/kurot/utils/DebugLog.js +0 -1
  259. package/dist/kurot/utils/DebugLog.js.map +1 -1
  260. package/dist/kurot/utils/FontManager.d.ts.map +1 -1
  261. package/dist/kurot/utils/FontManager.js +3 -1
  262. package/dist/kurot/utils/FontManager.js.map +1 -1
  263. package/dist/kurot/utils/NumberUtils.d.ts.map +1 -1
  264. package/dist/kurot/utils/NumberUtils.js +0 -1
  265. package/dist/kurot/utils/NumberUtils.js.map +1 -1
  266. package/package.json +14 -3
  267. package/dist/kurot/benchmark/BenchmarkRunner.d.ts +0 -60
  268. package/dist/kurot/benchmark/BenchmarkRunner.d.ts.map +0 -1
  269. package/dist/kurot/benchmark/BenchmarkRunner.js +0 -112
  270. package/dist/kurot/benchmark/BenchmarkRunner.js.map +0 -1
  271. package/dist/kurot/benchmark/MetricsCollector.d.ts +0 -34
  272. package/dist/kurot/benchmark/MetricsCollector.d.ts.map +0 -1
  273. package/dist/kurot/benchmark/MetricsCollector.js +0 -123
  274. package/dist/kurot/benchmark/MetricsCollector.js.map +0 -1
  275. package/dist/kurot/benchmark/PerfPanel.d.ts +0 -24
  276. package/dist/kurot/benchmark/PerfPanel.d.ts.map +0 -1
  277. package/dist/kurot/benchmark/PerfPanel.js +0 -131
  278. package/dist/kurot/benchmark/PerfPanel.js.map +0 -1
  279. package/dist/kurot/benchmark/ReportExporter.d.ts +0 -8
  280. package/dist/kurot/benchmark/ReportExporter.d.ts.map +0 -1
  281. package/dist/kurot/benchmark/ReportExporter.js +0 -54
  282. package/dist/kurot/benchmark/ReportExporter.js.map +0 -1
  283. package/dist/kurot/benchmark/SceneRegistry.d.ts +0 -16
  284. package/dist/kurot/benchmark/SceneRegistry.d.ts.map +0 -1
  285. package/dist/kurot/benchmark/SceneRegistry.js +0 -233
  286. package/dist/kurot/benchmark/SceneRegistry.js.map +0 -1
  287. package/dist/kurot/benchmark/types.d.ts +0 -47
  288. package/dist/kurot/benchmark/types.d.ts.map +0 -1
  289. package/dist/kurot/benchmark/types.js +0 -2
  290. package/dist/kurot/benchmark/types.js.map +0 -1
@@ -11,9 +11,6 @@ import { tokenize, splitGraphemes } from './WordWrap.js';
11
11
  /**
12
12
  * TextField displays text content. Supports single-line, multi-line, word wrap,
13
13
  * rich text (textFlow), input mode, and basic styling.
14
- *
15
- * Simplified from Egret's TextField — uses normal properties instead of the
16
- * internal $TextField array-based storage.
17
14
  */
18
15
  export class TextField extends DisplayObject {
19
16
  // ── Static fields ─────────────────────────────────────────────────────────
@@ -63,9 +60,6 @@ export class TextField extends DisplayObject {
63
60
  this.$renderObjectType = 5 /* RenderObjectType.TEXT */;
64
61
  this.invalidateFontString();
65
62
  }
66
- // Width/Height affect line-breaking, so invalidate text when they change.
67
- // NOTE: override both getter AND setter — overriding only the setter in JS
68
- // shadows the parent's getter, causing `tf.height` to return `undefined`.
69
63
  get width() {
70
64
  return isNaN(this.$explicitWidth) ? this.$getOriginalBounds().width : this.$explicitWidth;
71
65
  }
@@ -210,7 +204,6 @@ export class TextField extends DisplayObject {
210
204
  this._inputController = new InputController(this);
211
205
  }
212
206
  this.touchEnabled = true;
213
- // Set default size if not explicitly set, matching old Egret behaviour
214
207
  if (isNaN(this.$explicitWidth))
215
208
  this.width = 100;
216
209
  if (isNaN(this.$explicitHeight))
@@ -218,9 +211,6 @@ export class TextField extends DisplayObject {
218
211
  if (this.stage) {
219
212
  this._inputController.addStageText();
220
213
  }
221
- // Sync the raw text to StageText so the native input shows the
222
- // current value (the text setter may have run before the
223
- // InputController was created).
224
214
  this._inputController.setText(this._text);
225
215
  }
226
216
  else {
@@ -245,9 +235,6 @@ export class TextField extends DisplayObject {
245
235
  return this._text;
246
236
  }
247
237
  set text(value) {
248
- // Keep the runtime API compatible with Egret/DOM text setters. JavaScript
249
- // callers and EXML bindings can provide numbers, objects, or null despite
250
- // the TypeScript declaration; line layout must always receive a string.
251
238
  const normalized = value == null ? '' : String(value);
252
239
  if (this._text === normalized)
253
240
  return;
@@ -301,7 +288,6 @@ export class TextField extends DisplayObject {
301
288
  this._restrictNot = undefined;
302
289
  }
303
290
  else {
304
- // Find the first unescaped '^'
305
291
  let index = -1;
306
292
  let i = 0;
307
293
  while (i < value.length) {
@@ -328,11 +314,9 @@ export class TextField extends DisplayObject {
328
314
  }
329
315
  }
330
316
  }
331
- /** @internal Parsed whitelist portion of restrict. */
332
317
  get restrictAnd() {
333
318
  return this._restrictAnd;
334
319
  }
335
- /** @internal Parsed blacklist portion of restrict. */
336
320
  get restrictNot() {
337
321
  return this._restrictNot;
338
322
  }
@@ -388,13 +372,11 @@ export class TextField extends DisplayObject {
388
372
  }
389
373
  get textHeight() {
390
374
  this.ensureLines();
391
- // INPUT single-line: height is always fontSize, matching Egret behaviour
392
375
  if (this._type === TextFieldType.INPUT && !this._multiline) {
393
376
  return this._fontSize;
394
377
  }
395
378
  return this._textHeight + (this._numLines - 1) * this._lineSpacing;
396
379
  }
397
- /** @internal Font string for Canvas 2D rendering. */
398
380
  get fontString() {
399
381
  return this._fontString;
400
382
  }
@@ -407,16 +389,13 @@ export class TextField extends DisplayObject {
407
389
  get caretIndex() {
408
390
  return this._selectionActive;
409
391
  }
410
- /** @internal Whether the user is currently typing (INPUT mode). Used by renderer. */
411
392
  get isTyping() {
412
393
  return this._isTyping;
413
394
  }
414
- /** @internal Computed line layout data. */
415
395
  getLinesArr() {
416
396
  this.ensureLines();
417
397
  return this._linesArr ?? [];
418
398
  }
419
- /** @internal Y offset in pixels for the current scrollV position. */
420
399
  getScrollYOffset() {
421
400
  if (this._scrollV <= 1)
422
401
  return 0;
@@ -435,7 +414,6 @@ export class TextField extends DisplayObject {
435
414
  }
436
415
  appendElement(element) {
437
416
  if (this._displayAsPassword) {
438
- // In password mode, only update the raw text, don't expose textFlow
439
417
  this.text = this._text + element.text;
440
418
  return;
441
419
  }
@@ -459,7 +437,6 @@ export class TextField extends DisplayObject {
459
437
  this._selectionAnchor = beginIndex;
460
438
  this._selectionActive = endIndex;
461
439
  }
462
- /** @internal Called by InputController when typing state changes. */
463
440
  setIsTyping(value) {
464
441
  this._isTyping = value;
465
442
  this.$renderDirty = true;
@@ -515,10 +492,8 @@ export class TextField extends DisplayObject {
515
492
  totalHeight += line.height;
516
493
  }
517
494
  this._textWidth = maxWidth;
518
- // Store raw sum of line heights (without lineSpacing); textHeight getter adds spacing.
519
495
  this._textHeight = totalHeight;
520
496
  }
521
- /** Number of fully-visible lines in the current explicit height (mirrors Egret's $getScrollNum). */
522
497
  getScrollNum() {
523
498
  if (!this._multiline)
524
499
  return 1;
@@ -538,13 +513,11 @@ export class TextField extends DisplayObject {
538
513
  const maxWidth = !isNaN(this.$explicitWidth) ? this.$explicitWidth : NaN;
539
514
  const isInput = this._type === TextFieldType.INPUT;
540
515
  const lines = [];
541
- // Width == 0: return empty placeholder (matches old behaviour)
542
516
  if (!isNaN(maxWidth) && maxWidth === 0) {
543
517
  return [{ width: 0, height: 0, charNum: 0, hasNextLine: false, elements: [] }];
544
518
  }
545
519
  let currentLine = [];
546
520
  let lineWidth = 0;
547
- // INPUT mode: line height is always fontSize, not per-style max
548
521
  let lineHeight = this._fontSize;
549
522
  let lineCharNum = 0;
550
523
  const flushLine = (hasNext) => {
@@ -568,20 +541,17 @@ export class TextField extends DisplayObject {
568
541
  const fontFamily = style.fontFamily ?? this._fontFamily;
569
542
  const bold = style.bold ?? this._bold;
570
543
  const italic = style.italic ?? this._italic;
571
- // Split by line breaks first (\r\n, \r, \n)
572
544
  const segments = element.text.split(/\r\n|\r|\n/);
573
545
  for (let si = 0; si < segments.length; si++) {
574
546
  const seg = segments[si];
575
547
  const isLastSeg = si === segments.length - 1;
576
548
  if (seg === '') {
577
549
  if (!isLastSeg) {
578
- // explicit newline
579
550
  flushLine(true);
580
551
  }
581
552
  continue;
582
553
  }
583
554
  if (isNaN(maxWidth)) {
584
- // No width constraint — whole segment goes on current line
585
555
  const w = measureText(seg, fontFamily, fontSize, bold, italic);
586
556
  currentLine.push({ text: seg, width: w, style: element.style });
587
557
  lineWidth += w;
@@ -592,10 +562,8 @@ export class TextField extends DisplayObject {
592
562
  flushLine(true);
593
563
  }
594
564
  else {
595
- // Width constrained — need to break the segment
596
565
  const totalSegWidth = measureText(seg, fontFamily, fontSize, bold, italic);
597
566
  if (lineWidth + totalSegWidth <= maxWidth || !this._multiline) {
598
- // Fits on current line
599
567
  currentLine.push({ text: seg, width: totalSegWidth, style: element.style });
600
568
  lineWidth += totalSegWidth;
601
569
  if (!isInput)
@@ -605,18 +573,15 @@ export class TextField extends DisplayObject {
605
573
  flushLine(true);
606
574
  }
607
575
  else {
608
- // Need to break — tokenize into words/spaces, then wrap by width
609
576
  const tokenTexts = this._wordWrap ? tokenize(seg) : (seg.match(/[\s\S]/gu) ?? seg.split(''));
610
577
  let ww = 0;
611
578
  let charNum = 0;
612
579
  for (const token of tokenTexts) {
613
580
  const w = measureText(token, fontFamily, fontSize, bold, italic);
614
581
  if (lineWidth !== 0 && lineWidth + w > maxWidth) {
615
- // Flush current line and start new one
616
582
  flushLine(false);
617
583
  }
618
584
  if (w > maxWidth) {
619
- // Single token wider than field — break char by char
620
585
  const chars = splitGraphemes(token);
621
586
  for (const ch of chars) {
622
587
  const cw = measureText(ch, fontFamily, fontSize, bold, italic);
@@ -681,20 +646,17 @@ export class TextField extends DisplayObject {
681
646
  open(href, element.style.target ?? '_blank');
682
647
  }
683
648
  };
684
- /** @internal Hit-test to find the ITextElement at a given local coordinate. */
685
649
  getTextElementAt(x, y) {
686
650
  this.ensureLines();
687
651
  const lines = this._linesArr ?? [];
688
652
  const width = !isNaN(this.$explicitWidth) ? this.$explicitWidth : this._textWidth;
689
653
  const height = !isNaN(this.$explicitHeight) ? this.$explicitHeight : this.textHeight;
690
- // Compute total text height for vertical alignment offset
691
654
  let totalTextHeight = 0;
692
655
  for (let i = 0; i < lines.length; i++) {
693
656
  totalTextHeight += lines[i].height;
694
657
  if (i > 0)
695
658
  totalTextHeight += this._lineSpacing;
696
659
  }
697
- // Vertical alignment offset (mirrors renderTextField)
698
660
  let verticalOffset = 0;
699
661
  if (this._verticalAlign === VerticalAlign.MIDDLE) {
700
662
  verticalOffset = Math.max(0, (height - totalTextHeight) / 2);
@@ -702,16 +664,13 @@ export class TextField extends DisplayObject {
702
664
  else if (this._verticalAlign === VerticalAlign.BOTTOM) {
703
665
  verticalOffset = Math.max(0, height - totalTextHeight);
704
666
  }
705
- // ScrollV offset
706
667
  const scrollOffset = this.getScrollYOffset();
707
- // Adjust y into text-local space (line-top coordinates)
708
668
  const localY = y - verticalOffset + scrollOffset;
709
669
  let lineY = 0;
710
670
  for (const line of lines) {
711
671
  if (localY < lineY)
712
672
  break;
713
673
  if (localY <= lineY + line.height) {
714
- // Horizontal alignment offset
715
674
  let lineX = 0;
716
675
  if (this._textAlign === HorizontalAlign.RIGHT) {
717
676
  lineX = width - line.width;
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.js","sourceRoot":"","sources":["../../../src/kurot/text/TextField.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TextField.js","sourceRoot":"","sources":["../../../src/kurot/text/TextField.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,6 @@
16
16
  * Newlines are NOT included (the caller should split by newlines first).
17
17
  *
18
18
  * - Latin: "hello world" → ["hello", " ", "world"]
19
- * - CJK: "你好世界" → ["你", "好", "世", "界"]
20
19
  * - Thai: "สวัสดีครับ" → ["สวัสดี", "ครับ"]
21
20
  */
22
21
  export declare function tokenize(text: string): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"WordWrap.d.ts","sourceRoot":"","sources":["../../../src/kurot/text/WordWrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAsCH;;;;;;;;;GASG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAwC/C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAUrD"}
1
+ {"version":3,"file":"WordWrap.d.ts","sourceRoot":"","sources":["../../../src/kurot/text/WordWrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAsCH;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAsC/C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAUrD"}
@@ -44,7 +44,6 @@ const NEWLINES = new Set([0x000a, 0x000d]);
44
44
  * Newlines are NOT included (the caller should split by newlines first).
45
45
  *
46
46
  * - Latin: "hello world" → ["hello", " ", "world"]
47
- * - CJK: "你好世界" → ["你", "好", "世", "界"]
48
47
  * - Thai: "สวัสดีครับ" → ["สวัสดี", "ครับ"]
49
48
  */
50
49
  export function tokenize(text) {
@@ -56,7 +55,6 @@ export function tokenize(text) {
56
55
  const s = seg.segment;
57
56
  if (!s)
58
57
  continue;
59
- // Skip newlines — caller handles them
60
58
  const code = s.charCodeAt(0);
61
59
  if (NEWLINES.has(code))
62
60
  continue;
@@ -64,7 +62,6 @@ export function tokenize(text) {
64
62
  }
65
63
  return result;
66
64
  }
67
- // Fallback: split into individual characters
68
65
  const result = [];
69
66
  let buf = '';
70
67
  for (let i = 0; i < text.length; i++) {
@@ -1 +1 @@
1
- {"version":3,"file":"WordWrap.js","sourceRoot":"","sources":["../../../src/kurot/text/WordWrap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WordWrap.js","sourceRoot":"","sources":["../../../src/kurot/text/WordWrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,+EAA+E;AAE/E,IAAI,UAAsC,CAAC;AAE3C,MAAM,YAAY,GAAG,OAAO,IAAI,KAAK,WAAW,IAAI,OAAQ,IAAgC,CAAC,SAAS,KAAK,UAAU,CAAC;AAEtH,SAAS,YAAY;IACpB,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,UAAU,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,UAAU,CAAC;AACnB,CAAC;AAED,+EAA+E;AAE/E,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC;IAC/B,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,qBAAqB;IAC7B,MAAM,EAAE,oBAAoB;IAC5B,MAAM,EAAE,mBAAmB;IAC3B,MAAM,EAAE,oBAAoB;IAC5B,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,4BAA4B;IACpC,MAAM,EAAE,oBAAoB;CAC5B,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAE3C,gFAAgF;AAEhF;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAY;IACpC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IAErB,IAAI,YAAY,EAAE,CAAC;QAClB,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,MAAM,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC;YACtB,IAAI,CAAC,CAAC;gBAAE,SAAS;YACjB,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAS;YACjC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,GAAG,EAAE,CAAC;gBACT,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjB,GAAG,GAAG,EAAE,CAAC;YACV,CAAC;YACD,SAAS;QACV,CAAC;QACD,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,IAAI,GAAG,EAAE,CAAC;gBACT,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjB,GAAG,GAAG,EAAE,CAAC;YACV,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACP,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC;IACF,CAAC;IACD,IAAI,GAAG;QAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IAC1C,IAAI,YAAY,EAAE,CAAC;QAClB,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;QACvE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;AAClB,CAAC"}
@@ -1,14 +1,9 @@
1
1
  /**
2
- * Base64 encode/decode for `ArrayBuffer`. Wraps the browser's native
3
- * `btoa` / `atob` (universally supported since 2014); the previous hand-rolled
4
- * bit-twiddling implementation was an ES5-era fallback for old IE.
2
+ * Encodes and decodes `ArrayBuffer` values with the browser Base64 APIs.
5
3
  */
6
4
  export declare class Base64Util {
7
5
  /**
8
6
  * Encode an `ArrayBuffer` to a base64 string.
9
- * Converts bytes to a binary string in chunks (to avoid launching a
10
- * single `String.fromCharCode` apply with tens of thousands of args) and
11
- * hands the result to native `btoa`.
12
7
  */
13
8
  static encode(buffer: ArrayBuffer): string;
14
9
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Base64Util.d.ts","sourceRoot":"","sources":["../../../src/kurot/utils/Base64Util.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,UAAU;IACtB;;;;;OAKG;WACW,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;IAcjD;;;OAGG;WACW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW;CASjD"}
1
+ {"version":3,"file":"Base64Util.d.ts","sourceRoot":"","sources":["../../../src/kurot/utils/Base64Util.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,UAAU;IACtB;;OAEG;WACW,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM;IAajD;;;OAGG;WACW,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW;CASjD"}
@@ -1,21 +1,15 @@
1
1
  /**
2
- * Base64 encode/decode for `ArrayBuffer`. Wraps the browser's native
3
- * `btoa` / `atob` (universally supported since 2014); the previous hand-rolled
4
- * bit-twiddling implementation was an ES5-era fallback for old IE.
2
+ * Encodes and decodes `ArrayBuffer` values with the browser Base64 APIs.
5
3
  */
6
4
  export class Base64Util {
7
5
  /**
8
6
  * Encode an `ArrayBuffer` to a base64 string.
9
- * Converts bytes to a binary string in chunks (to avoid launching a
10
- * single `String.fromCharCode` apply with tens of thousands of args) and
11
- * hands the result to native `btoa`.
12
7
  */
13
8
  static encode(buffer) {
14
9
  const bytes = new Uint8Array(buffer);
15
10
  const len = bytes.length;
16
11
  if (len === 0)
17
12
  return '';
18
- // Build the binary string in 8KB chunks to stay within argument limits.
19
13
  const CHUNK = 0x2000;
20
14
  let binary = '';
21
15
  for (let i = 0; i < len; i += CHUNK) {
@@ -1 +1 @@
1
- {"version":3,"file":"Base64Util.js","sourceRoot":"","sources":["../../../src/kurot/utils/Base64Util.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,UAAU;IACtB;;;;;OAKG;IACI,MAAM,CAAC,MAAM,CAAC,MAAmB;QACvC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;QACzB,IAAI,GAAG,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEzB,wEAAwE;QACxE,MAAM,KAAK,GAAG,MAAM,CAAC;QACrB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;YACrC,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,MAAM,CAAC,MAAc;QAClC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,KAAK,CAAC,MAAM,CAAC;IACrB,CAAC;CACD"}
1
+ {"version":3,"file":"Base64Util.js","sourceRoot":"","sources":["../../../src/kurot/utils/Base64Util.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,UAAU;IACtB;;OAEG;IACI,MAAM,CAAC,MAAM,CAAC,MAAmB;QACvC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;QACzB,IAAI,GAAG,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEzB,MAAM,KAAK,GAAG,MAAM,CAAC;QACrB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;YACrC,MAAM,IAAI,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,MAAM,CAAC,MAAc;QAClC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,KAAK,CAAC,MAAM,CAAC;IACrB,CAAC;CACD"}
@@ -20,6 +20,5 @@ export class DebugLog {
20
20
  }
21
21
  }
22
22
  }
23
- // Expose to window for test page
24
23
  globalThis.DebugLog = DebugLog;
25
24
  //# sourceMappingURL=DebugLog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DebugLog.js","sourceRoot":"","sources":["../../../src/kurot/utils/DebugLog.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,QAAQ;IACZ,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC;IACvB,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;IAEvB,MAAM,CAAC,MAAM;QACnB,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;QACzB,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC;IAC1B,CAAC;IAEM,MAAM,KAAK,MAAM;QACvB,IAAI,CAAC,QAAQ,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QACrC,OAAO,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,SAAS;QACtB,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACvB,QAAQ,CAAC,WAAW,EAAE,CAAC;YACvB,IAAI,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACjD,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAC;YAC3B,CAAC;QACF,CAAC;IACF,CAAC;;AAGF,iCAAiC;AAChC,UAAsC,CAAC,QAAQ,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"DebugLog.js","sourceRoot":"","sources":["../../../src/kurot/utils/DebugLog.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,QAAQ;IACZ,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC;IACvB,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;IAEvB,MAAM,CAAC,MAAM;QACnB,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;QACzB,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC;IAC1B,CAAC;IAEM,MAAM,KAAK,MAAM;QACvB,IAAI,CAAC,QAAQ,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QACrC,OAAO,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,UAAU,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,SAAS;QACtB,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACvB,QAAQ,CAAC,WAAW,EAAE,CAAC;YACvB,IAAI,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACjD,QAAQ,CAAC,QAAQ,GAAG,KAAK,CAAC;YAC3B,CAAC;QACF,CAAC;IACF,CAAC;;AAGD,UAAsC,CAAC,QAAQ,GAAG,QAAQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FontManager.d.ts","sourceRoot":"","sources":["../../../src/kurot/utils/FontManager.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAExE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAMpE"}
1
+ {"version":3,"file":"FontManager.d.ts","sourceRoot":"","sources":["../../../src/kurot/utils/FontManager.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,IAAI,CAExE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAMpE"}
@@ -1,4 +1,6 @@
1
- /** Cache for font file ArrayBuffers, keyed by URL. */
1
+ /**
2
+ * Cache for font file ArrayBuffers, keyed by URL.
3
+ */
2
4
  const fontResourceCache = {};
3
5
  /**
4
6
  * Stores a font file buffer for later use by registerFontMapping.
@@ -1 +1 @@
1
- {"version":3,"file":"FontManager.js","sourceRoot":"","sources":["../../../src/kurot/utils/FontManager.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,MAAM,iBAAiB,GAAgC,EAAE,CAAC;AAE1D;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,MAAmB;IACjE,iBAAiB,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY,EAAE,IAAY;IAC7D,IAAI,UAAU,IAAI,MAAM,EAAE,CAAC;QAC1B,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACP,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;AACF,CAAC;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,IAAY;IAClD,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,uDAAuD,IAAI,mBAAmB,CAAC,CAAC;QAC7F,OAAO;IACR,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;QAC3B,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,IAAY;IACtD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,WAAW,GAAG,8BAA8B,IAAI,gBAAgB,IAAI,OAAO,CAAC;IAClF,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"FontManager.js","sourceRoot":"","sources":["../../../src/kurot/utils/FontManager.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,iBAAiB,GAAgC,EAAE,CAAC;AAE1D;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,MAAmB;IACjE,iBAAiB,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY,EAAE,IAAY;IAC7D,IAAI,UAAU,IAAI,MAAM,EAAE,CAAC;QAC1B,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACP,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;AACF,CAAC;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,IAAY;IAClD,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,uDAAuD,IAAI,mBAAmB,CAAC,CAAC;QAC7F,OAAO;IACR,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;QAC3B,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,IAAY;IACtD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,WAAW,GAAG,8BAA8B,IAAI,gBAAgB,IAAI,OAAO,CAAC;IAClF,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"NumberUtils.d.ts","sourceRoot":"","sources":["../../../src/kurot/utils/NumberUtils.ts"],"names":[],"mappings":"AAkBA,qBAAa,WAAW;IACvB;;OAEG;WACW,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAOxC;;OAEG;WACW,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;WAO1B,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM;WAIzC,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAS1D,OAAO,CAAC,MAAM,CAAC,MAAM;IAMrB,OAAO,CAAC,MAAM,CAAC,MAAM;CAKrB"}
1
+ {"version":3,"file":"NumberUtils.d.ts","sourceRoot":"","sources":["../../../src/kurot/utils/NumberUtils.ts"],"names":[],"mappings":"AAiBA,qBAAa,WAAW;IACvB;;OAEG;WACW,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAOxC;;OAEG;WACW,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;WAO1B,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM;WAIzC,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAS1D,OAAO,CAAC,MAAM,CAAC,MAAM;IAMrB,OAAO,CAAC,MAAM,CAAC,MAAM;CAKrB"}
@@ -5,7 +5,6 @@ for (let i = 0; i < 360; i++) {
5
5
  sinMap[i] = Math.sin(i * DEG_TO_RAD);
6
6
  cosMap[i] = Math.cos(i * DEG_TO_RAD);
7
7
  }
8
- // Fix floating-point imprecision for cardinal angles
9
8
  sinMap[90] = 1;
10
9
  cosMap[90] = 0;
11
10
  sinMap[180] = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"NumberUtils.js","sourceRoot":"","sources":["../../../src/kurot/utils/NumberUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NumberUtils.js","sourceRoot":"","sources":["../../../src/kurot/utils/NumberUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kurot/core",
3
- "version": "1.0.14",
3
+ "version": "1.0.16",
4
4
  "description": "Modern rewrite of the Egret game engine — WebGL multi-texture batching, instruction-driven render pipeline, strict TypeScript, Egret-compatible API",
5
5
  "author": "Kelvin <kyia.x52@gmail.com>",
6
6
  "license": "MIT",
@@ -24,16 +24,27 @@
24
24
  "dev": "tsc --watch",
25
25
  "clean": "rm -rf dist",
26
26
  "test": "vitest run",
27
+ "test:visual": "playwright test --config examples/visual-regression/playwright.config.ts",
28
+ "test:visual:update": "playwright test --config examples/visual-regression/playwright.config.ts --update-snapshots",
27
29
  "test:watch": "vitest",
28
30
  "prepublishOnly": "npm run clean && npm run build",
29
- "benchmark": "vite --config vite.config.ts --open /index.html",
30
- "build:benchmark": "vite --config vite.config.ts build && cp examples/egret.min.js examples/egret.web.min.js benchmark-dist/",
31
+ "benchmark": "vite --config vite.config.ts",
32
+ "benchmark:compare": "playwright test --config examples/benchmark/playwright.config.ts",
33
+ "benchmark:smoke": "BENCHMARK_PROFILE=smoke playwright test --config examples/benchmark/playwright.config.ts",
34
+ "test:soak": "playwright test --config examples/benchmark/soak.playwright.config.ts",
35
+ "test:soak:30m": "SOAK_DURATION_MINUTES=30 playwright test --config examples/benchmark/soak.playwright.config.ts",
36
+ "test:soak:2h": "SOAK_DURATION_MINUTES=120 playwright test --config examples/benchmark/soak.playwright.config.ts",
37
+ "test:soak:overnight": "SOAK_DURATION_MINUTES=480 playwright test --config examples/benchmark/soak.playwright.config.ts",
38
+ "test:device-matrix": "playwright test --config examples/benchmark/device-matrix.playwright.config.ts",
39
+ "build:benchmark": "vite --config vite.config.ts build",
31
40
  "preview:benchmark": "vite preview --config vite.config.ts --host 0.0.0.0 --port 4173"
32
41
  },
33
42
  "devDependencies": {
43
+ "@playwright/test": "1.62.1",
34
44
  "@types/node": "^22.0.0",
35
45
  "fast-check": "^4.6.0",
36
46
  "happy-dom": "^20.8.9",
47
+ "pixi.js": "8.20.0",
37
48
  "typescript": "^5.6.0",
38
49
  "vite": "^8.0.8",
39
50
  "vitest": "^4.1.4"
@@ -1,60 +0,0 @@
1
- import type { MetricsCollector } from './MetricsCollector.js';
2
- export type Phase = 'idle' | 'warmup' | 'measuring' | 'paused';
3
- export interface SceneDescriptor {
4
- id: string;
5
- label?: string;
6
- defaultCount?: number;
7
- minCount?: number;
8
- maxCount?: number;
9
- build(container: unknown, count: number): () => void;
10
- }
11
- /**
12
- * 纯状态机,管理 warmup/measuring/paused 状态。
13
- * 不依赖 Kurot 引擎,通过外部注入的回调与引擎交互。
14
- */
15
- export declare class BenchmarkRunner {
16
- private readonly collector;
17
- private readonly onPhaseChange;
18
- private readonly getSceneDescriptor;
19
- private readonly container;
20
- private phase;
21
- private warmupFrames;
22
- private readonly warmupTarget;
23
- private currentSceneId;
24
- private currentCount;
25
- private cleanup;
26
- constructor(collector: MetricsCollector, onPhaseChange: (phase: Phase) => void, getSceneDescriptor: (id: string) => SceneDescriptor | undefined, container: unknown);
27
- /**
28
- * 切换场景:销毁旧场景,重建新场景,重置 warmup
29
- */
30
- switchScene(sceneId: string, count: number): void;
31
- /**
32
- * 重建当前场景(对象数量变更)
33
- */
34
- rebuildScene(count: number): void;
35
- /**
36
- * 暂停(仅在 measuring 状态有效)
37
- */
38
- pause(): void;
39
- /**
40
- * 继续(仅在 paused 状态有效)
41
- */
42
- resume(): void;
43
- /**
44
- * 重置测量:清空统计,重新进入 warmup
45
- */
46
- resetMeasurement(): void;
47
- /**
48
- * 每帧回调(由外部 ENTER_FRAME 事件调用)
49
- */
50
- onFrame(perf: {
51
- fps: number;
52
- drawCalls: number;
53
- renderTimeMs: number;
54
- }): void;
55
- /**
56
- * 获取当前阶段
57
- */
58
- getPhase(): Phase;
59
- }
60
- //# sourceMappingURL=BenchmarkRunner.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BenchmarkRunner.d.ts","sourceRoot":"","sources":["../../../src/kurot/benchmark/BenchmarkRunner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE/D,MAAM,WAAW,eAAe;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,IAAI,CAAC;CACrD;AAED;;;GAGG;AACH,qBAAa,eAAe;IAS1B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAX3B,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAM;IACnC,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,OAAO,CAA2B;gBAGxB,SAAS,EAAE,gBAAgB,EAC3B,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,EACrC,kBAAkB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,eAAe,GAAG,SAAS,EAC/D,SAAS,EAAE,OAAO;IAGpC;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAyBjD;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAMjC;;OAEG;IACH,KAAK,IAAI,IAAI;IAOb;;OAEG;IACH,MAAM,IAAI,IAAI;IAOd;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAOxB;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAyB7E;;OAEG;IACH,QAAQ,IAAI,KAAK;CAGjB"}