@lightningjs/renderer 3.0.0-beta2 → 3.0.0-beta4

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 (387) hide show
  1. package/COPYING +1 -0
  2. package/LICENSE +202 -202
  3. package/NOTICE +3 -3
  4. package/README.md +147 -147
  5. package/dist/exports/index.d.ts +1 -0
  6. package/dist/exports/index.js +1 -0
  7. package/dist/exports/index.js.map +1 -1
  8. package/dist/src/core/CoreNode.d.ts +3 -2
  9. package/dist/src/core/CoreNode.js +13 -7
  10. package/dist/src/core/CoreNode.js.map +1 -1
  11. package/dist/src/core/CoreShaderManager.d.ts +3 -5
  12. package/dist/src/core/CoreShaderManager.js.map +1 -1
  13. package/dist/src/core/CoreTextNode.d.ts +2 -0
  14. package/dist/src/core/CoreTextNode.js +7 -0
  15. package/dist/src/core/CoreTextNode.js.map +1 -1
  16. package/dist/src/core/CoreTextureManager.d.ts +2 -0
  17. package/dist/src/core/CoreTextureManager.js +7 -5
  18. package/dist/src/core/CoreTextureManager.js.map +1 -1
  19. package/dist/src/core/Stage.d.ts +5 -0
  20. package/dist/src/core/Stage.js +10 -5
  21. package/dist/src/core/Stage.js.map +1 -1
  22. package/dist/src/core/lib/validateImageBitmap.d.ts +2 -1
  23. package/dist/src/core/lib/validateImageBitmap.js +4 -4
  24. package/dist/src/core/lib/validateImageBitmap.js.map +1 -1
  25. package/dist/src/core/platforms/Platform.d.ts +37 -0
  26. package/dist/src/{main-api/IRenderDriver.js → core/platforms/Platform.js} +4 -2
  27. package/dist/src/core/platforms/Platform.js.map +1 -0
  28. package/dist/src/core/platforms/web/WebPlatform.d.ts +9 -0
  29. package/dist/src/core/platforms/web/WebPlatform.js +58 -0
  30. package/dist/src/core/platforms/web/WebPlatform.js.map +1 -0
  31. package/dist/src/core/renderers/CoreRenderer.d.ts +3 -1
  32. package/dist/src/core/renderers/CoreRenderer.js.map +1 -1
  33. package/dist/src/core/renderers/CoreShaderNode.d.ts +1 -1
  34. package/dist/src/core/renderers/CoreShaderNode.js.map +1 -1
  35. package/dist/src/core/renderers/canvas/CanvasRenderer.js.map +1 -1
  36. package/dist/src/core/renderers/webgl/WebGlRenderer.d.ts +3 -1
  37. package/dist/src/core/renderers/webgl/WebGlRenderer.js +86 -60
  38. package/dist/src/core/renderers/webgl/WebGlRenderer.js.map +1 -1
  39. package/dist/src/core/renderers/webgl/internal/ShaderUtils.js +35 -35
  40. package/dist/src/core/renderers/webgl/shaders/DefaultShader.js +45 -45
  41. package/dist/src/core/renderers/webgl/shaders/DefaultShaderBatched.js +61 -61
  42. package/dist/src/core/renderers/webgl/shaders/DynamicShader.js +93 -93
  43. package/dist/src/core/renderers/webgl/shaders/RoundedRectangle.js +63 -63
  44. package/dist/src/core/renderers/webgl/shaders/SdfShader.js +62 -62
  45. package/dist/src/core/renderers/webgl/shaders/effects/BorderBottomEffect.js +15 -15
  46. package/dist/src/core/renderers/webgl/shaders/effects/BorderEffect.js +6 -6
  47. package/dist/src/core/renderers/webgl/shaders/effects/BorderLeftEffect.js +15 -15
  48. package/dist/src/core/renderers/webgl/shaders/effects/BorderRightEffect.js +15 -15
  49. package/dist/src/core/renderers/webgl/shaders/effects/BorderTopEffect.js +15 -15
  50. package/dist/src/core/renderers/webgl/shaders/effects/FadeOutEffect.js +42 -42
  51. package/dist/src/core/renderers/webgl/shaders/effects/GlitchEffect.js +44 -44
  52. package/dist/src/core/renderers/webgl/shaders/effects/GrayscaleEffect.js +3 -3
  53. package/dist/src/core/renderers/webgl/shaders/effects/HolePunchEffect.js +22 -22
  54. package/dist/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.js +28 -28
  55. package/dist/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.js +10 -10
  56. package/dist/src/core/renderers/webgl/shaders/effects/RadialProgressEffect.js +37 -37
  57. package/dist/src/core/renderers/webgl/shaders/effects/RadiusEffect.js +19 -19
  58. package/dist/src/core/shaders/webgl/Border.js +59 -59
  59. package/dist/src/core/shaders/webgl/Default.js +47 -47
  60. package/dist/src/core/shaders/webgl/DefaultBatched.js +61 -61
  61. package/dist/src/core/shaders/webgl/HolePunch.js +32 -32
  62. package/dist/src/core/shaders/webgl/LinearGradient.js +36 -36
  63. package/dist/src/core/shaders/webgl/RadialGradient.js +33 -33
  64. package/dist/src/core/shaders/webgl/Rounded.js +71 -71
  65. package/dist/src/core/shaders/webgl/RoundedWithBorder.js +66 -66
  66. package/dist/src/core/shaders/webgl/RoundedWithBorderAndShadow.js +79 -79
  67. package/dist/src/core/shaders/webgl/RoundedWithShadow.js +54 -54
  68. package/dist/src/core/shaders/webgl/SdfShader.js +62 -62
  69. package/dist/src/core/shaders/webgl/Shadow.js +83 -83
  70. package/dist/src/core/temp.js +77 -0
  71. package/dist/src/core/temp.js.map +1 -0
  72. package/dist/src/core/text-rendering/renderers/CanvasTextRenderer.js +5 -0
  73. package/dist/src/core/text-rendering/renderers/CanvasTextRenderer.js.map +1 -1
  74. package/dist/src/core/text-rendering/renderers/LightningTextTextureRenderer.d.ts +1 -1
  75. package/dist/src/core/text-rendering/renderers/LightningTextTextureRenderer.js +50 -2
  76. package/dist/src/core/text-rendering/renderers/LightningTextTextureRenderer.js.map +1 -1
  77. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.js +6 -2
  78. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.js.map +1 -1
  79. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/layoutText.d.ts +1 -1
  80. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/layoutText.js +66 -8
  81. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/layoutText.js.map +1 -1
  82. package/dist/src/core/text-rendering/renderers/TextRenderer.d.ts +13 -0
  83. package/dist/src/core/text-rendering/renderers/TextRenderer.js +3 -0
  84. package/dist/src/core/text-rendering/renderers/TextRenderer.js.map +1 -1
  85. package/dist/src/core/textures/ImageTexture.d.ts +1 -0
  86. package/dist/src/core/textures/ImageTexture.js +5 -3
  87. package/dist/src/core/textures/ImageTexture.js.map +1 -1
  88. package/dist/src/core/textures/Texture.d.ts +9 -2
  89. package/dist/src/core/textures/Texture.js +18 -6
  90. package/dist/src/core/textures/Texture.js.map +1 -1
  91. package/dist/src/main-api/INode.d.ts +2 -2
  92. package/dist/src/main-api/Renderer.d.ts +13 -1
  93. package/dist/src/main-api/Renderer.js +14 -2
  94. package/dist/src/main-api/Renderer.js.map +1 -1
  95. package/dist/tsconfig.dist.tsbuildinfo +1 -1
  96. package/exports/canvas-shaders.ts +28 -28
  97. package/exports/canvas.ts +45 -45
  98. package/exports/index.ts +90 -89
  99. package/exports/inspector.ts +24 -24
  100. package/exports/utils.ts +44 -44
  101. package/exports/webgl-shaders.ts +28 -28
  102. package/exports/webgl.ts +50 -50
  103. package/package.json +2 -3
  104. package/scripts/please-use-pnpm.js +13 -13
  105. package/src/common/CommonTypes.ts +146 -146
  106. package/src/common/EventEmitter.ts +77 -77
  107. package/src/common/IAnimationController.ts +92 -92
  108. package/src/common/IEventEmitter.ts +28 -28
  109. package/src/core/CoreNode.test.ts +203 -203
  110. package/src/core/CoreNode.ts +2494 -2486
  111. package/src/core/CoreShaderManager.ts +188 -193
  112. package/src/core/CoreTextNode.ts +448 -439
  113. package/src/core/CoreTextureManager.ts +601 -597
  114. package/src/core/Stage.ts +754 -738
  115. package/src/core/TextureMemoryManager.ts +395 -395
  116. package/src/core/animations/AnimationManager.ts +38 -38
  117. package/src/core/animations/CoreAnimation.ts +284 -284
  118. package/src/core/animations/CoreAnimationController.ts +157 -157
  119. package/src/core/lib/ContextSpy.ts +41 -41
  120. package/src/core/lib/ImageWorker.ts +280 -280
  121. package/src/core/lib/Matrix3d.ts +244 -244
  122. package/src/core/lib/RenderCoords.ts +71 -71
  123. package/src/core/lib/WebGlContextWrapper.ts +1374 -1374
  124. package/src/core/lib/textureCompression.ts +152 -152
  125. package/src/core/lib/textureSvg.ts +78 -78
  126. package/src/core/lib/utils.ts +386 -386
  127. package/src/core/lib/validateImageBitmap.ts +87 -76
  128. package/src/core/platform.ts +64 -64
  129. package/src/core/platforms/Platform.ts +77 -0
  130. package/src/core/platforms/web/WebPlatform.ts +84 -0
  131. package/src/core/renderers/CoreContextTexture.ts +43 -43
  132. package/src/core/renderers/CoreRenderOp.ts +22 -22
  133. package/src/core/renderers/CoreRenderer.ts +109 -107
  134. package/src/core/renderers/CoreShaderNode.ts +165 -167
  135. package/src/core/renderers/CoreShaderProgram.ts +23 -23
  136. package/src/core/renderers/canvas/CanvasRenderer.ts +298 -298
  137. package/src/core/renderers/canvas/CanvasShaderNode.ts +99 -99
  138. package/src/core/renderers/canvas/CanvasTexture.ts +156 -156
  139. package/src/core/renderers/canvas/internal/C2DShaderUtils.ts +220 -220
  140. package/src/core/renderers/canvas/internal/ColorUtils.ts +85 -85
  141. package/src/core/renderers/webgl/WebGlCtxRenderTexture.ts +86 -86
  142. package/src/core/renderers/webgl/WebGlCtxSubTexture.ts +50 -50
  143. package/src/core/renderers/webgl/WebGlCtxTexture.ts +301 -301
  144. package/src/core/renderers/webgl/WebGlRenderOp.ts +161 -161
  145. package/src/core/renderers/webgl/WebGlRenderer.ts +750 -720
  146. package/src/core/renderers/webgl/WebGlShaderNode.ts +437 -437
  147. package/src/core/renderers/webgl/WebGlShaderProgram.ts +318 -318
  148. package/src/core/renderers/webgl/internal/BufferCollection.ts +54 -54
  149. package/src/core/renderers/webgl/internal/RendererUtils.ts +155 -155
  150. package/src/core/renderers/webgl/internal/ShaderUtils.ts +281 -281
  151. package/src/core/renderers/webgl/internal/WebGlUtils.ts +35 -35
  152. package/src/core/shaders/canvas/Border.ts +78 -78
  153. package/src/core/shaders/canvas/HolePunch.ts +62 -62
  154. package/src/core/shaders/canvas/LinearGradient.ts +69 -69
  155. package/src/core/shaders/canvas/RadialGradient.ts +113 -113
  156. package/src/core/shaders/canvas/Rounded.ts +55 -55
  157. package/src/core/shaders/canvas/RoundedWithBorder.ts +68 -68
  158. package/src/core/shaders/canvas/RoundedWithBorderAndShadow.ts +88 -88
  159. package/src/core/shaders/canvas/RoundedWithShadow.ts +69 -69
  160. package/src/core/shaders/canvas/Shadow.ts +52 -52
  161. package/src/core/shaders/canvas/utils/render.ts +151 -151
  162. package/src/core/shaders/templates/BorderTemplate.ts +115 -115
  163. package/src/core/shaders/templates/HolePunchTemplate.ts +82 -82
  164. package/src/core/shaders/templates/LinearGradientTemplate.ts +71 -71
  165. package/src/core/shaders/templates/RadialGradientTemplate.ts +81 -81
  166. package/src/core/shaders/templates/RoundedTemplate.ts +98 -98
  167. package/src/core/shaders/templates/RoundedWithBorderAndShadowTemplate.ts +38 -38
  168. package/src/core/shaders/templates/RoundedWithBorderTemplate.ts +35 -35
  169. package/src/core/shaders/templates/RoundedWithShadowTemplate.ts +35 -35
  170. package/src/core/shaders/templates/ShadowTemplate.ts +106 -106
  171. package/src/core/shaders/templates/shaderUtils.ts +47 -47
  172. package/src/core/shaders/webgl/Border.ts +96 -96
  173. package/src/core/shaders/webgl/Default.ts +89 -89
  174. package/src/core/shaders/webgl/DefaultBatched.ts +129 -129
  175. package/src/core/shaders/webgl/HolePunch.ts +78 -78
  176. package/src/core/shaders/webgl/LinearGradient.ts +81 -81
  177. package/src/core/shaders/webgl/RadialGradient.ts +84 -84
  178. package/src/core/shaders/webgl/Rounded.ts +117 -117
  179. package/src/core/shaders/webgl/RoundedWithBorder.ts +114 -114
  180. package/src/core/shaders/webgl/RoundedWithBorderAndShadow.ts +133 -133
  181. package/src/core/shaders/webgl/RoundedWithShadow.ts +98 -98
  182. package/src/core/shaders/webgl/SdfShader.ts +134 -134
  183. package/src/core/shaders/webgl/Shadow.ts +115 -115
  184. package/src/core/text-rendering/TextRenderingUtils.ts +36 -36
  185. package/src/core/text-rendering/TextTextureRendererUtils.ts +263 -263
  186. package/src/core/text-rendering/TrFontManager.ts +183 -183
  187. package/src/core/text-rendering/font-face-types/SdfTrFontFace/SdfTrFontFace.ts +176 -176
  188. package/src/core/text-rendering/font-face-types/SdfTrFontFace/internal/FontShaper.ts +139 -139
  189. package/src/core/text-rendering/font-face-types/SdfTrFontFace/internal/SdfFontShaper.test.ts +173 -173
  190. package/src/core/text-rendering/font-face-types/SdfTrFontFace/internal/SdfFontShaper.ts +171 -171
  191. package/src/core/text-rendering/font-face-types/TrFontFace.ts +187 -187
  192. package/src/core/text-rendering/font-face-types/WebTrFontFace.ts +94 -94
  193. package/src/core/text-rendering/font-face-types/utils.ts +39 -39
  194. package/src/core/text-rendering/renderers/CanvasTextRenderer.ts +514 -509
  195. package/src/core/text-rendering/renderers/LightningTextTextureRenderer.ts +863 -815
  196. package/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.ts +846 -840
  197. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/PeekableGenerator.test.ts +48 -48
  198. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/PeekableGenerator.ts +66 -66
  199. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/SpecialCodepoints.ts +52 -52
  200. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/constants.ts +32 -32
  201. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/getStartConditions.ts +117 -117
  202. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/getUnicodeCodepoints.test.ts +133 -133
  203. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/getUnicodeCodepoints.ts +38 -38
  204. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/layoutText.ts +497 -408
  205. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/measureText.test.ts +49 -49
  206. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/measureText.ts +52 -52
  207. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/setRenderWindow.test.ts +205 -205
  208. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/setRenderWindow.ts +93 -93
  209. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/util.ts +40 -40
  210. package/src/core/text-rendering/renderers/TextRenderer.ts +567 -550
  211. package/src/core/textures/ColorTexture.ts +102 -102
  212. package/src/core/textures/ImageTexture.ts +410 -399
  213. package/src/core/textures/NoiseTexture.ts +104 -104
  214. package/src/core/textures/RenderTexture.ts +85 -85
  215. package/src/core/textures/SubTexture.ts +205 -205
  216. package/src/core/textures/Texture.ts +358 -337
  217. package/src/core/utils.ts +227 -227
  218. package/src/env.d.ts +7 -7
  219. package/src/main-api/INode.ts +100 -99
  220. package/src/main-api/Inspector.ts +522 -522
  221. package/src/main-api/Renderer.ts +675 -649
  222. package/src/main-api/utils.ts +45 -45
  223. package/src/utils.ts +267 -267
  224. package/dist/exports/core-api.d.ts +0 -74
  225. package/dist/exports/core-api.js +0 -96
  226. package/dist/exports/core-api.js.map +0 -1
  227. package/dist/exports/main-api.d.ts +0 -30
  228. package/dist/exports/main-api.js +0 -45
  229. package/dist/exports/main-api.js.map +0 -1
  230. package/dist/src/core/CoreExtension.d.ts +0 -12
  231. package/dist/src/core/CoreExtension.js +0 -29
  232. package/dist/src/core/CoreExtension.js.map +0 -1
  233. package/dist/src/core/CoreStuff.js +0 -138
  234. package/dist/src/core/CoreStuff.js.map +0 -1
  235. package/dist/src/core/CoreTexturizer.d.ts +0 -14
  236. package/dist/src/core/CoreTexturizer.js +0 -47
  237. package/dist/src/core/CoreTexturizer.js.map +0 -1
  238. package/dist/src/core/LngNode.d.ts +0 -736
  239. package/dist/src/core/LngNode.js +0 -1174
  240. package/dist/src/core/LngNode.js.map +0 -1
  241. package/dist/src/core/Matrix2DContext.d.ts +0 -15
  242. package/dist/src/core/Matrix2DContext.js +0 -45
  243. package/dist/src/core/Matrix2DContext.js.map +0 -1
  244. package/dist/src/core/ShaderNode.d.ts +0 -10
  245. package/dist/src/core/ShaderNode.js +0 -30
  246. package/dist/src/core/ShaderNode.js.map +0 -1
  247. package/dist/src/core/TextNode.d.ts +0 -103
  248. package/dist/src/core/TextNode.js +0 -331
  249. package/dist/src/core/TextNode.js.map +0 -1
  250. package/dist/src/core/lib/Coords.d.ts +0 -14
  251. package/dist/src/core/lib/Coords.js +0 -55
  252. package/dist/src/core/lib/Coords.js.map +0 -1
  253. package/dist/src/core/lib/glm/common.d.ts +0 -162
  254. package/dist/src/core/lib/glm/common.js +0 -81
  255. package/dist/src/core/lib/glm/common.js.map +0 -1
  256. package/dist/src/core/lib/glm/index.d.ts +0 -11
  257. package/dist/src/core/lib/glm/index.js +0 -30
  258. package/dist/src/core/lib/glm/index.js.map +0 -1
  259. package/dist/src/core/lib/glm/mat2.d.ts +0 -219
  260. package/dist/src/core/lib/glm/mat2.js +0 -396
  261. package/dist/src/core/lib/glm/mat2.js.map +0 -1
  262. package/dist/src/core/lib/glm/mat2d.d.ts +0 -237
  263. package/dist/src/core/lib/glm/mat2d.js +0 -442
  264. package/dist/src/core/lib/glm/mat2d.js.map +0 -1
  265. package/dist/src/core/lib/glm/mat3.d.ts +0 -283
  266. package/dist/src/core/lib/glm/mat3.js +0 -680
  267. package/dist/src/core/lib/glm/mat3.js.map +0 -1
  268. package/dist/src/core/lib/glm/mat4.d.ts +0 -550
  269. package/dist/src/core/lib/glm/mat4.js +0 -1802
  270. package/dist/src/core/lib/glm/mat4.js.map +0 -1
  271. package/dist/src/core/lib/glm/quat.d.ts +0 -363
  272. package/dist/src/core/lib/glm/quat.js +0 -693
  273. package/dist/src/core/lib/glm/quat.js.map +0 -1
  274. package/dist/src/core/lib/glm/quat2.d.ts +0 -356
  275. package/dist/src/core/lib/glm/quat2.js +0 -754
  276. package/dist/src/core/lib/glm/quat2.js.map +0 -1
  277. package/dist/src/core/lib/glm/vec2.d.ts +0 -365
  278. package/dist/src/core/lib/glm/vec2.js +0 -569
  279. package/dist/src/core/lib/glm/vec2.js.map +0 -1
  280. package/dist/src/core/lib/glm/vec3.d.ts +0 -406
  281. package/dist/src/core/lib/glm/vec3.js +0 -720
  282. package/dist/src/core/lib/glm/vec3.js.map +0 -1
  283. package/dist/src/core/lib/glm/vec4.d.ts +0 -330
  284. package/dist/src/core/lib/glm/vec4.js +0 -608
  285. package/dist/src/core/lib/glm/vec4.js.map +0 -1
  286. package/dist/src/core/renderers/CoreShaderManager.d.ts +0 -19
  287. package/dist/src/core/renderers/CoreShaderManager.js +0 -33
  288. package/dist/src/core/renderers/CoreShaderManager.js.map +0 -1
  289. package/dist/src/core/renderers/webgl/WebGlCoreShaderManager.d.ts +0 -27
  290. package/dist/src/core/renderers/webgl/WebGlCoreShaderManager.js +0 -82
  291. package/dist/src/core/renderers/webgl/WebGlCoreShaderManager.js.map +0 -1
  292. package/dist/src/core/renderers/webgl/WebGlCoreShaderProgram.d.ts +0 -11
  293. package/dist/src/core/renderers/webgl/WebGlCoreShaderProgram.js +0 -34
  294. package/dist/src/core/renderers/webgl/WebGlCoreShaderProgram.js.map +0 -1
  295. package/dist/src/core/scene/Scene.d.ts +0 -59
  296. package/dist/src/core/scene/Scene.js +0 -106
  297. package/dist/src/core/scene/Scene.js.map +0 -1
  298. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/makeRenderWindow.d.ts +0 -20
  299. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/makeRenderWindow.js +0 -55
  300. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/makeRenderWindow.js.map +0 -1
  301. package/dist/src/main-api/ICoreDriver.d.ts +0 -27
  302. package/dist/src/main-api/ICoreDriver.js +0 -20
  303. package/dist/src/main-api/ICoreDriver.js.map +0 -1
  304. package/dist/src/main-api/IRenderDriver.d.ts +0 -20
  305. package/dist/src/main-api/IRenderDriver.js.map +0 -1
  306. package/dist/src/main-api/IShaderController.d.ts +0 -14
  307. package/dist/src/main-api/IShaderController.js +0 -30
  308. package/dist/src/main-api/IShaderController.js.map +0 -1
  309. package/dist/src/main-api/IShaderNode.d.ts +0 -17
  310. package/dist/src/main-api/IShaderNode.js +0 -19
  311. package/dist/src/main-api/IShaderNode.js.map +0 -1
  312. package/dist/src/main-api/RendererMain.d.ts +0 -375
  313. package/dist/src/main-api/RendererMain.js +0 -365
  314. package/dist/src/main-api/RendererMain.js.map +0 -1
  315. package/dist/src/main-api/texture-usage-trackers/FinalizationRegistryTextureUsageTracker.d.ts +0 -9
  316. package/dist/src/main-api/texture-usage-trackers/FinalizationRegistryTextureUsageTracker.js +0 -38
  317. package/dist/src/main-api/texture-usage-trackers/FinalizationRegistryTextureUsageTracker.js.map +0 -1
  318. package/dist/src/main-api/texture-usage-trackers/ManualCountTextureUsageTracker.d.ts +0 -56
  319. package/dist/src/main-api/texture-usage-trackers/ManualCountTextureUsageTracker.js +0 -101
  320. package/dist/src/main-api/texture-usage-trackers/ManualCountTextureUsageTracker.js.map +0 -1
  321. package/dist/src/main-api/texture-usage-trackers/TextureUsageTracker.d.ts +0 -32
  322. package/dist/src/main-api/texture-usage-trackers/TextureUsageTracker.js +0 -28
  323. package/dist/src/main-api/texture-usage-trackers/TextureUsageTracker.js.map +0 -1
  324. package/dist/src/render-drivers/main/MainCoreDriver.d.ts +0 -24
  325. package/dist/src/render-drivers/main/MainCoreDriver.js +0 -118
  326. package/dist/src/render-drivers/main/MainCoreDriver.js.map +0 -1
  327. package/dist/src/render-drivers/main/MainOnlyNode.d.ts +0 -99
  328. package/dist/src/render-drivers/main/MainOnlyNode.js +0 -396
  329. package/dist/src/render-drivers/main/MainOnlyNode.js.map +0 -1
  330. package/dist/src/render-drivers/main/MainOnlyShaderController.d.ts +0 -6
  331. package/dist/src/render-drivers/main/MainOnlyShaderController.js +0 -15
  332. package/dist/src/render-drivers/main/MainOnlyShaderController.js.map +0 -1
  333. package/dist/src/render-drivers/main/MainOnlyShaderNode.d.ts +0 -7
  334. package/dist/src/render-drivers/main/MainOnlyShaderNode.js +0 -34
  335. package/dist/src/render-drivers/main/MainOnlyShaderNode.js.map +0 -1
  336. package/dist/src/render-drivers/main/MainOnlyTextNode.d.ts +0 -47
  337. package/dist/src/render-drivers/main/MainOnlyTextNode.js +0 -205
  338. package/dist/src/render-drivers/main/MainOnlyTextNode.js.map +0 -1
  339. package/dist/src/render-drivers/main/MainRenderDriver.d.ts +0 -17
  340. package/dist/src/render-drivers/main/MainRenderDriver.js +0 -88
  341. package/dist/src/render-drivers/main/MainRenderDriver.js.map +0 -1
  342. package/dist/src/render-drivers/threadx/NodeStruct.d.ts +0 -90
  343. package/dist/src/render-drivers/threadx/NodeStruct.js +0 -281
  344. package/dist/src/render-drivers/threadx/NodeStruct.js.map +0 -1
  345. package/dist/src/render-drivers/threadx/SharedNode.d.ts +0 -39
  346. package/dist/src/render-drivers/threadx/SharedNode.js +0 -60
  347. package/dist/src/render-drivers/threadx/SharedNode.js.map +0 -1
  348. package/dist/src/render-drivers/threadx/TextNodeStruct.d.ts +0 -44
  349. package/dist/src/render-drivers/threadx/TextNodeStruct.js +0 -201
  350. package/dist/src/render-drivers/threadx/TextNodeStruct.js.map +0 -1
  351. package/dist/src/render-drivers/threadx/ThreadXCoreDriver.d.ts +0 -28
  352. package/dist/src/render-drivers/threadx/ThreadXCoreDriver.js +0 -234
  353. package/dist/src/render-drivers/threadx/ThreadXCoreDriver.js.map +0 -1
  354. package/dist/src/render-drivers/threadx/ThreadXMainAnimationController.d.ts +0 -20
  355. package/dist/src/render-drivers/threadx/ThreadXMainAnimationController.js +0 -84
  356. package/dist/src/render-drivers/threadx/ThreadXMainAnimationController.js.map +0 -1
  357. package/dist/src/render-drivers/threadx/ThreadXMainNode.d.ts +0 -44
  358. package/dist/src/render-drivers/threadx/ThreadXMainNode.js +0 -154
  359. package/dist/src/render-drivers/threadx/ThreadXMainNode.js.map +0 -1
  360. package/dist/src/render-drivers/threadx/ThreadXMainShaderController.d.ts +0 -6
  361. package/dist/src/render-drivers/threadx/ThreadXMainShaderController.js +0 -16
  362. package/dist/src/render-drivers/threadx/ThreadXMainShaderController.js.map +0 -1
  363. package/dist/src/render-drivers/threadx/ThreadXMainShaderNode.d.ts +0 -7
  364. package/dist/src/render-drivers/threadx/ThreadXMainShaderNode.js +0 -15
  365. package/dist/src/render-drivers/threadx/ThreadXMainShaderNode.js.map +0 -1
  366. package/dist/src/render-drivers/threadx/ThreadXMainTextNode.d.ts +0 -28
  367. package/dist/src/render-drivers/threadx/ThreadXMainTextNode.js +0 -55
  368. package/dist/src/render-drivers/threadx/ThreadXMainTextNode.js.map +0 -1
  369. package/dist/src/render-drivers/threadx/ThreadXRenderDriver.d.ts +0 -21
  370. package/dist/src/render-drivers/threadx/ThreadXRenderDriver.js +0 -198
  371. package/dist/src/render-drivers/threadx/ThreadXRenderDriver.js.map +0 -1
  372. package/dist/src/render-drivers/threadx/ThreadXRendererMessage.d.ts +0 -70
  373. package/dist/src/render-drivers/threadx/ThreadXRendererMessage.js +0 -32
  374. package/dist/src/render-drivers/threadx/ThreadXRendererMessage.js.map +0 -1
  375. package/dist/src/render-drivers/threadx/worker/ThreadXRendererNode.d.ts +0 -19
  376. package/dist/src/render-drivers/threadx/worker/ThreadXRendererNode.js +0 -177
  377. package/dist/src/render-drivers/threadx/worker/ThreadXRendererNode.js.map +0 -1
  378. package/dist/src/render-drivers/threadx/worker/ThreadXRendererTextNode.d.ts +0 -27
  379. package/dist/src/render-drivers/threadx/worker/ThreadXRendererTextNode.js +0 -108
  380. package/dist/src/render-drivers/threadx/worker/ThreadXRendererTextNode.js.map +0 -1
  381. package/dist/src/render-drivers/threadx/worker/renderer.d.ts +0 -1
  382. package/dist/src/render-drivers/threadx/worker/renderer.js +0 -145
  383. package/dist/src/render-drivers/threadx/worker/renderer.js.map +0 -1
  384. package/dist/src/render-drivers/utils.d.ts +0 -12
  385. package/dist/src/render-drivers/utils.js +0 -69
  386. package/dist/src/render-drivers/utils.js.map +0 -1
  387. /package/dist/src/core/{CoreStuff.d.ts → temp.d.ts} +0 -0
@@ -48,69 +48,69 @@ export const Sdf = {
48
48
  this.uniform1f('u_distanceRange', props.distanceRange);
49
49
  this.uniform1i('u_debug', props.debug ? 1 : 0);
50
50
  },
51
- vertex: `
52
- # ifdef GL_FRAGMENT_PRECISION_HIGH
53
- precision highp float;
54
- # else
55
- precision mediump float;
56
- # endif
57
- // an attribute is an input (in) to a vertex shader.
58
- // It will receive data from a buffer
59
- attribute vec2 a_position;
60
- attribute vec2 a_textureCoords;
61
-
62
- uniform vec2 u_resolution;
63
- uniform mat3 u_transform;
64
- uniform float u_scrollY;
65
- uniform float u_pixelRatio;
66
- uniform float u_size;
67
-
68
- varying vec2 v_texcoord;
69
-
70
- void main() {
71
- vec2 scrolledPosition = a_position * u_size - vec2(0, u_scrollY);
72
- vec2 transformedPosition = (u_transform * vec3(scrolledPosition, 1)).xy;
73
-
74
- // Calculate screen space with pixel ratio
75
- vec2 screenSpace = (transformedPosition * u_pixelRatio / u_resolution * 2.0 - 1.0) * vec2(1, -1);
76
-
77
- gl_Position = vec4(screenSpace, 0.0, 1.0);
78
- v_texcoord = a_textureCoords;
79
-
80
- }
51
+ vertex: `
52
+ # ifdef GL_FRAGMENT_PRECISION_HIGH
53
+ precision highp float;
54
+ # else
55
+ precision mediump float;
56
+ # endif
57
+ // an attribute is an input (in) to a vertex shader.
58
+ // It will receive data from a buffer
59
+ attribute vec2 a_position;
60
+ attribute vec2 a_textureCoords;
61
+
62
+ uniform vec2 u_resolution;
63
+ uniform mat3 u_transform;
64
+ uniform float u_scrollY;
65
+ uniform float u_pixelRatio;
66
+ uniform float u_size;
67
+
68
+ varying vec2 v_texcoord;
69
+
70
+ void main() {
71
+ vec2 scrolledPosition = a_position * u_size - vec2(0, u_scrollY);
72
+ vec2 transformedPosition = (u_transform * vec3(scrolledPosition, 1)).xy;
73
+
74
+ // Calculate screen space with pixel ratio
75
+ vec2 screenSpace = (transformedPosition * u_pixelRatio / u_resolution * 2.0 - 1.0) * vec2(1, -1);
76
+
77
+ gl_Position = vec4(screenSpace, 0.0, 1.0);
78
+ v_texcoord = a_textureCoords;
79
+
80
+ }
81
81
  `,
82
- fragment: `
83
- # ifdef GL_FRAGMENT_PRECISION_HIGH
84
- precision highp float;
85
- # else
86
- precision mediump float;
87
- # endif
88
- uniform vec4 u_color;
89
- uniform sampler2D u_texture;
90
- uniform float u_distanceRange;
91
- uniform float u_pixelRatio;
92
- uniform int u_debug;
93
-
94
- varying vec2 v_texcoord;
95
-
96
- float median(float r, float g, float b) {
97
- return max(min(r, g), min(max(r, g), b));
98
- }
99
-
100
- void main() {
101
- vec3 sample = texture2D(u_texture, v_texcoord).rgb;
102
- if (u_debug == 1) {
103
- gl_FragColor = vec4(sample.r, sample.g, sample.b, 1.0);
104
- return;
105
- }
106
- float scaledDistRange = u_distanceRange * u_pixelRatio;
107
- float sigDist = scaledDistRange * (median(sample.r, sample.g, sample.b) - 0.5);
108
- float opacity = clamp(sigDist + 0.5, 0.0, 1.0) * u_color.a;
109
-
110
- // Build the final color.
111
- // IMPORTANT: We must premultiply the color by the alpha value before returning it.
112
- gl_FragColor = vec4(u_color.r * opacity, u_color.g * opacity, u_color.b * opacity, opacity);
113
- }
82
+ fragment: `
83
+ # ifdef GL_FRAGMENT_PRECISION_HIGH
84
+ precision highp float;
85
+ # else
86
+ precision mediump float;
87
+ # endif
88
+ uniform vec4 u_color;
89
+ uniform sampler2D u_texture;
90
+ uniform float u_distanceRange;
91
+ uniform float u_pixelRatio;
92
+ uniform int u_debug;
93
+
94
+ varying vec2 v_texcoord;
95
+
96
+ float median(float r, float g, float b) {
97
+ return max(min(r, g), min(max(r, g), b));
98
+ }
99
+
100
+ void main() {
101
+ vec3 sample = texture2D(u_texture, v_texcoord).rgb;
102
+ if (u_debug == 1) {
103
+ gl_FragColor = vec4(sample.r, sample.g, sample.b, 1.0);
104
+ return;
105
+ }
106
+ float scaledDistRange = u_distanceRange * u_pixelRatio;
107
+ float sigDist = scaledDistRange * (median(sample.r, sample.g, sample.b) - 0.5);
108
+ float opacity = clamp(sigDist + 0.5, 0.0, 1.0) * u_color.a;
109
+
110
+ // Build the final color.
111
+ // IMPORTANT: We must premultiply the color by the alpha value before returning it.
112
+ gl_FragColor = vec4(u_color.r * opacity, u_color.g * opacity, u_color.b * opacity, opacity);
113
+ }
114
114
  `,
115
115
  };
116
116
  //# sourceMappingURL=SdfShader.js.map
@@ -21,90 +21,90 @@ export const Shadow = {
21
21
  this.uniformRGBA('u_color', this.props.color);
22
22
  this.uniform4fa('u_shadow', this.props.projection);
23
23
  },
24
- vertex: `
25
- # ifdef GL_FRAGMENT_PRECISION_HIGH
26
- precision highp float;
27
- # else
28
- precision mediump float;
29
- # endif
30
-
31
- attribute vec2 a_position;
32
- attribute vec2 a_textureCoords;
33
- attribute vec4 a_color;
34
- attribute vec2 a_nodeCoords;
35
-
36
- uniform vec2 u_resolution;
37
- uniform float u_pixelRatio;
38
- uniform float u_rtt;
39
- uniform vec2 u_dimensions;
40
-
41
- uniform vec4 u_shadow;
42
-
43
- varying vec4 v_color;
44
- varying vec2 v_textureCoords;
45
- varying vec2 v_nodeCoords;
46
-
47
- void main() {
48
- vec2 screenSpace = vec2(2.0 / u_resolution.x, -2.0 / u_resolution.y);
49
- vec2 outerEdge = clamp(a_nodeCoords * 2.0 - vec2(1.0), -1.0, 1.0);
50
-
51
- vec2 shadowEdge = outerEdge * ((u_shadow.w * 2.0)+ u_shadow.z) + u_shadow.xy;
52
- vec2 normVertexPos = a_position * u_pixelRatio;
53
-
54
- vec2 vertexPos = (a_position + outerEdge + shadowEdge) * u_pixelRatio;
55
- gl_Position = vec4(vertexPos.x * screenSpace.x - 1.0, -sign(screenSpace.y) * (vertexPos.y * -abs(screenSpace.y)) + 1.0, 0.0, 1.0);
56
-
57
- v_color = a_color;
58
- v_nodeCoords = a_nodeCoords + (screenSpace + shadowEdge) / (u_dimensions);
59
- v_textureCoords = a_textureCoords + (screenSpace + shadowEdge) / (u_dimensions);
60
- }
24
+ vertex: `
25
+ # ifdef GL_FRAGMENT_PRECISION_HIGH
26
+ precision highp float;
27
+ # else
28
+ precision mediump float;
29
+ # endif
30
+
31
+ attribute vec2 a_position;
32
+ attribute vec2 a_textureCoords;
33
+ attribute vec4 a_color;
34
+ attribute vec2 a_nodeCoords;
35
+
36
+ uniform vec2 u_resolution;
37
+ uniform float u_pixelRatio;
38
+ uniform float u_rtt;
39
+ uniform vec2 u_dimensions;
40
+
41
+ uniform vec4 u_shadow;
42
+
43
+ varying vec4 v_color;
44
+ varying vec2 v_textureCoords;
45
+ varying vec2 v_nodeCoords;
46
+
47
+ void main() {
48
+ vec2 screenSpace = vec2(2.0 / u_resolution.x, -2.0 / u_resolution.y);
49
+ vec2 outerEdge = clamp(a_nodeCoords * 2.0 - vec2(1.0), -1.0, 1.0);
50
+
51
+ vec2 shadowEdge = outerEdge * ((u_shadow.w * 2.0)+ u_shadow.z) + u_shadow.xy;
52
+ vec2 normVertexPos = a_position * u_pixelRatio;
53
+
54
+ vec2 vertexPos = (a_position + outerEdge + shadowEdge) * u_pixelRatio;
55
+ gl_Position = vec4(vertexPos.x * screenSpace.x - 1.0, -sign(screenSpace.y) * (vertexPos.y * -abs(screenSpace.y)) + 1.0, 0.0, 1.0);
56
+
57
+ v_color = a_color;
58
+ v_nodeCoords = a_nodeCoords + (screenSpace + shadowEdge) / (u_dimensions);
59
+ v_textureCoords = a_textureCoords + (screenSpace + shadowEdge) / (u_dimensions);
60
+ }
61
61
  `,
62
- fragment: `
63
- # ifdef GL_FRAGMENT_PRECISION_HIGH
64
- precision highp float;
65
- # else
66
- precision mediump float;
67
- # endif
68
-
69
- uniform vec2 u_resolution;
70
- uniform float u_pixelRatio;
71
- uniform float u_alpha;
72
- uniform vec2 u_dimensions;
73
- uniform sampler2D u_texture;
74
-
75
- uniform vec4 u_color;
76
- uniform vec4 u_shadow;
77
-
78
- varying vec4 v_color;
79
- varying vec2 v_textureCoords;
80
- varying vec2 v_nodeCoords;
81
-
82
- float box(vec2 p, vec2 s) {
83
- vec2 q = abs(p) - s;
84
- return (min(max(q.x, q.y), 0.0) + length(max(q, 0.0))) + 2.0;
85
- }
86
-
87
- float shadowBox(vec2 p, vec2 s, float r) {
88
- vec2 q = abs(p) - s + r;
89
- float dist = min(max(q.x, q.y), 0.0) + length(max(q, 0.0)) - r;
90
- return 1.0 - smoothstep(-u_shadow.w, u_shadow.w + u_shadow.z, dist);
91
- }
92
-
93
- void main() {
94
- vec4 color = texture2D(u_texture, v_textureCoords) * v_color;
95
- vec2 halfDimensions = (u_dimensions * 0.5);
96
-
97
- vec2 boxUv = v_nodeCoords.xy * u_dimensions - halfDimensions;
98
- float boxDist = box(boxUv, halfDimensions);
99
-
100
- float boxAlpha = 1.0 - smoothstep(0.0, u_pixelRatio, boxDist);
101
- float shadowDist = shadowBox(boxUv - u_shadow.xy, halfDimensions + u_shadow.w, u_shadow.z);
102
-
103
- vec4 resColor = vec4(0.0);
104
- resColor = mix(resColor, u_color, shadowDist);
105
- resColor = mix(resColor, color, min(color.a, boxAlpha));
106
- gl_FragColor = resColor * u_alpha;
107
- }
62
+ fragment: `
63
+ # ifdef GL_FRAGMENT_PRECISION_HIGH
64
+ precision highp float;
65
+ # else
66
+ precision mediump float;
67
+ # endif
68
+
69
+ uniform vec2 u_resolution;
70
+ uniform float u_pixelRatio;
71
+ uniform float u_alpha;
72
+ uniform vec2 u_dimensions;
73
+ uniform sampler2D u_texture;
74
+
75
+ uniform vec4 u_color;
76
+ uniform vec4 u_shadow;
77
+
78
+ varying vec4 v_color;
79
+ varying vec2 v_textureCoords;
80
+ varying vec2 v_nodeCoords;
81
+
82
+ float box(vec2 p, vec2 s) {
83
+ vec2 q = abs(p) - s;
84
+ return (min(max(q.x, q.y), 0.0) + length(max(q, 0.0))) + 2.0;
85
+ }
86
+
87
+ float shadowBox(vec2 p, vec2 s, float r) {
88
+ vec2 q = abs(p) - s + r;
89
+ float dist = min(max(q.x, q.y), 0.0) + length(max(q, 0.0)) - r;
90
+ return 1.0 - smoothstep(-u_shadow.w, u_shadow.w + u_shadow.z, dist);
91
+ }
92
+
93
+ void main() {
94
+ vec4 color = texture2D(u_texture, v_textureCoords) * v_color;
95
+ vec2 halfDimensions = (u_dimensions * 0.5);
96
+
97
+ vec2 boxUv = v_nodeCoords.xy * u_dimensions - halfDimensions;
98
+ float boxDist = box(boxUv, halfDimensions);
99
+
100
+ float boxAlpha = 1.0 - smoothstep(0.0, u_pixelRatio, boxDist);
101
+ float shadowDist = shadowBox(boxUv - u_shadow.xy, halfDimensions + u_shadow.w, u_shadow.z);
102
+
103
+ vec4 resColor = vec4(0.0);
104
+ resColor = mix(resColor, u_color, shadowDist);
105
+ resColor = mix(resColor, color, min(color.a, boxAlpha));
106
+ gl_FragColor = resColor * u_alpha;
107
+ }
108
108
  `,
109
109
  };
110
110
  //# sourceMappingURL=Shadow.js.map
@@ -0,0 +1,77 @@
1
+ checkRenderBounds();
2
+ CoreNodeRenderState;
3
+ {
4
+ assertTruthy(this.renderBound);
5
+ assertTruthy(this.strictBound);
6
+ assertTruthy(this.preloadBound);
7
+ if (boundInsideBound(this.renderBound, this.strictBound)) {
8
+ return CoreNodeRenderState.InViewport;
9
+ }
10
+ if (boundInsideBound(this.renderBound, this.preloadBound)) {
11
+ return CoreNodeRenderState.InBounds;
12
+ }
13
+ // check if we're larger then our parent, we're definitely in the viewport
14
+ if (boundLargeThanBound(this.renderBound, this.strictBound)) {
15
+ return CoreNodeRenderState.InViewport;
16
+ }
17
+ // check if we dont have dimensions, take our parent's render state
18
+ if (this.parent !== null &&
19
+ (this.props.width === 0 || this.props.height === 0)) {
20
+ return this.parent.renderState;
21
+ }
22
+ return CoreNodeRenderState.OutOfBounds;
23
+ }
24
+ updateBoundingRect();
25
+ {
26
+ const transform = this.sceneGlobalTransform || this.globalTransform;
27
+ const renderCoords = this.sceneRenderCoords || this.renderCoords;
28
+ assertTruthy(transform);
29
+ assertTruthy(renderCoords);
30
+ if (transform.tb === 0 || transform.tc === 0) {
31
+ this.renderBound = createBound(renderCoords.x1, renderCoords.y1, renderCoords.x3, renderCoords.y3, this.renderBound);
32
+ }
33
+ else {
34
+ const { x1, y1, x2, y2, x3, y3, x4, y4 } = renderCoords;
35
+ this.renderBound = createBound(Math.min(x1, x2, x3, x4), Math.min(y1, y2, y3, y4), Math.max(x1, x2, x3, x4), Math.max(y1, y2, y3, y4), this.renderBound);
36
+ }
37
+ }
38
+ createRenderBounds();
39
+ void {
40
+ : .stage,
41
+ : .parent !== null && this.parent.strictBound !== undefined
42
+ };
43
+ {
44
+ // we have a parent with a valid bound, copy it
45
+ const parentBound = this.parent.strictBound;
46
+ this.strictBound = createBound(parentBound.x1, parentBound.y1, parentBound.x2, parentBound.y2);
47
+ this.preloadBound = createPreloadBounds(this.strictBound, this.boundsMargin);
48
+ }
49
+ {
50
+ // no parent or parent does not have a bound, take the stage boundaries
51
+ this.strictBound = this.stage.strictBound;
52
+ this.preloadBound = this.stage.preloadBound;
53
+ }
54
+ // if clipping is disabled, we're done
55
+ if (this.props.clipping === false) {
56
+ return;
57
+ }
58
+ // only create local clipping bounds if node itself is in bounds
59
+ // this can only be done if we have a render bound already
60
+ if (this.renderBound === undefined) {
61
+ return;
62
+ }
63
+ // if we're out of bounds, we're done
64
+ if (boundInsideBound(this.renderBound, this.strictBound) === false) {
65
+ return;
66
+ }
67
+ // clipping is enabled and we are in bounds create our own bounds
68
+ const { x, y, width, height } = this.props;
69
+ // Pick the global transform if available, otherwise use the local transform
70
+ // global transform is only available if the node in an RTT chain
71
+ const { tx, ty } = this.sceneGlobalTransform || this.globalTransform || {};
72
+ const _x = tx ?? x;
73
+ const _y = ty ?? y;
74
+ this.strictBound = createBound(_x, _y, _x + width, _y + height, this.strictBound);
75
+ this.preloadBound = createPreloadBounds(this.strictBound, this.boundsMargin);
76
+ export {};
77
+ //# sourceMappingURL=temp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temp.js","sourceRoot":"","sources":["../../../src/core/temp.ts"],"names":[],"mappings":"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"}
@@ -163,6 +163,10 @@ export class CanvasTextRenderer extends TextRenderer {
163
163
  state.props.verticalAlign = value;
164
164
  this.invalidateLayoutCache(state);
165
165
  },
166
+ wordBreak: (state, value) => {
167
+ state.props.wordBreak = value;
168
+ this.invalidateLayoutCache(state);
169
+ },
166
170
  overflowSuffix: (state, value) => {
167
171
  state.props.overflowSuffix = value;
168
172
  this.invalidateLayoutCache(state);
@@ -340,6 +344,7 @@ export class CanvasTextRenderer extends TextRenderer {
340
344
  textBaseline: state.props.textBaseline,
341
345
  verticalAlign: state.props.verticalAlign,
342
346
  overflowSuffix: state.props.overflowSuffix,
347
+ wordBreak: state.props.wordBreak,
343
348
  w: state.props.contain !== 'none' ? state.props.width : undefined,
344
349
  };
345
350
  state.renderInfo = state.lightning2TextRenderer.calculateRenderInfo();
@@ -1 +1 @@
1
- {"version":3,"file":"CanvasTextRenderer.js","sourceRoot":"","sources":["../../../../../src/core/text-rendering/renderers/CanvasTextRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CanvasTextRenderer.js","sourceRoot":"","sources":["../../../../../src/core/text-rendering/renderers/CanvasTextRenderer.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ export interface Settings {
31
31
  trFontFace: WebTrFontFace | null;
32
32
  wordWrap: boolean;
33
33
  wordWrapWidth: number;
34
- wordBreak: boolean;
34
+ wordBreak: 'normal' | 'break-all' | 'break-word';
35
35
  textOverflow: TextOverflow | null;
36
36
  lineHeight: number | null;
37
37
  textBaseline: TextBaseline;
@@ -145,6 +145,7 @@ export class LightningTextTextureRenderer {
145
145
  wordWrapWidth = innerWidth;
146
146
  }
147
147
  // Text overflow
148
+ // TODO Probably never used
148
149
  if (this._settings.textOverflow && !this._settings.wordWrap) {
149
150
  let suffix;
150
151
  switch (this._settings.textOverflow) {
@@ -464,7 +465,54 @@ export class LightningTextTextureRenderer {
464
465
  const wordWidthWithSpace = isZeroWidthSpace(space)
465
466
  ? wordWidth
466
467
  : wordWidth + this.measureText(space, letterSpacing);
467
- if (j === 0 || wordWidthWithSpace > spaceLeft) {
468
+ if (this._settings.wordBreak === 'break-all' &&
469
+ wordWidthWithSpace > spaceLeft) {
470
+ const letters = word.split('');
471
+ for (let k = 0; k < letters.length; k++) {
472
+ const letter = letters[k];
473
+ const letterWidthWithSpace = k > 0
474
+ ? this.measureText(letter, letterSpacing)
475
+ : this.measureText(space + letter, letterSpacing);
476
+ if (letterWidthWithSpace > spaceLeft) {
477
+ resultLines.push(result);
478
+ result = letter;
479
+ spaceLeft = wordWrapWidth - letterWidthWithSpace;
480
+ }
481
+ else {
482
+ spaceLeft -= letterWidthWithSpace;
483
+ result += k > 0 ? letter : space + letter;
484
+ }
485
+ }
486
+ }
487
+ else if (this._settings.wordBreak === 'break-word' &&
488
+ wordWidthWithSpace > spaceLeft) {
489
+ if (wordWidth < wordWrapWidth) {
490
+ resultLines.push(result);
491
+ result = word;
492
+ spaceLeft = wordWrapWidth - wordWidth - (j === 0 ? indent : 0);
493
+ }
494
+ else {
495
+ if (result.length > 0)
496
+ resultLines.push(result);
497
+ result = '';
498
+ spaceLeft = wordWrapWidth - indent;
499
+ const letters = word.split('');
500
+ for (let k = 0; k < letters.length; k++) {
501
+ const letter = letters[k];
502
+ const letterWidth = this.measureText(letter, letterSpacing);
503
+ if (letterWidth > spaceLeft) {
504
+ resultLines.push(result);
505
+ result = '';
506
+ spaceLeft = wordWrapWidth - indent;
507
+ }
508
+ else {
509
+ result += letter;
510
+ spaceLeft -= letterWidth;
511
+ }
512
+ }
513
+ }
514
+ }
515
+ else if (j === 0 || wordWidthWithSpace > spaceLeft) {
468
516
  if (j > 0) {
469
517
  resultLines.push(result);
470
518
  result = '';
@@ -510,7 +558,7 @@ export class LightningTextTextureRenderer {
510
558
  trFontFace: null,
511
559
  wordWrap: true,
512
560
  wordWrapWidth: 0,
513
- wordBreak: false,
561
+ wordBreak: 'normal',
514
562
  textOverflow: '',
515
563
  lineHeight: null,
516
564
  textBaseline: 'alphabetic',