@lightningjs/renderer 2.14.2 → 2.14.4

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 (310) hide show
  1. package/LICENSE +202 -202
  2. package/NOTICE +3 -3
  3. package/README.md +147 -147
  4. package/dist/src/core/CoreTextNode.js +2 -2
  5. package/dist/src/core/CoreTextNode.js.map +1 -1
  6. package/dist/src/core/CoreTextureManager.d.ts +4 -3
  7. package/dist/src/core/CoreTextureManager.js +33 -23
  8. package/dist/src/core/CoreTextureManager.js.map +1 -1
  9. package/dist/src/core/Stage.js +7 -2
  10. package/dist/src/core/Stage.js.map +1 -1
  11. package/dist/src/core/TextureMemoryManager.d.ts +1 -1
  12. package/dist/src/core/TextureMemoryManager.js +25 -2
  13. package/dist/src/core/TextureMemoryManager.js.map +1 -1
  14. package/dist/src/core/renderers/CoreContextTexture.d.ts +1 -1
  15. package/dist/src/core/renderers/canvas/CanvasCoreTexture.d.ts +1 -1
  16. package/dist/src/core/renderers/canvas/CanvasCoreTexture.js +7 -6
  17. package/dist/src/core/renderers/canvas/CanvasCoreTexture.js.map +1 -1
  18. package/dist/src/core/renderers/webgl/WebGlCoreCtxRenderTexture.js +3 -0
  19. package/dist/src/core/renderers/webgl/WebGlCoreCtxRenderTexture.js.map +1 -1
  20. package/dist/src/core/renderers/webgl/WebGlCoreCtxTexture.d.ts +5 -6
  21. package/dist/src/core/renderers/webgl/WebGlCoreCtxTexture.js +30 -18
  22. package/dist/src/core/renderers/webgl/WebGlCoreCtxTexture.js.map +1 -1
  23. package/dist/src/core/renderers/webgl/WebGlCoreShader.destroy.js +2 -0
  24. package/dist/src/core/renderers/webgl/WebGlCoreShader.destroy.js.map +1 -0
  25. package/dist/src/core/renderers/webgl/shaders/DefaultShader.js +45 -45
  26. package/dist/src/core/renderers/webgl/shaders/DefaultShaderBatched.js +61 -61
  27. package/dist/src/core/renderers/webgl/shaders/DynamicShader.js +93 -93
  28. package/dist/src/core/renderers/webgl/shaders/RoundedRectangle.js +63 -63
  29. package/dist/src/core/renderers/webgl/shaders/SdfShader.js +62 -62
  30. package/dist/src/core/renderers/webgl/shaders/effects/BorderBottomEffect.js +15 -15
  31. package/dist/src/core/renderers/webgl/shaders/effects/BorderEffect.js +6 -6
  32. package/dist/src/core/renderers/webgl/shaders/effects/BorderLeftEffect.js +15 -15
  33. package/dist/src/core/renderers/webgl/shaders/effects/BorderRightEffect.js +15 -15
  34. package/dist/src/core/renderers/webgl/shaders/effects/BorderTopEffect.js +15 -15
  35. package/dist/src/core/renderers/webgl/shaders/effects/FadeOutEffect.js +42 -42
  36. package/dist/src/core/renderers/webgl/shaders/effects/GlitchEffect.js +44 -44
  37. package/dist/src/core/renderers/webgl/shaders/effects/GrayscaleEffect.js +3 -3
  38. package/dist/src/core/renderers/webgl/shaders/effects/HolePunchEffect.js +22 -22
  39. package/dist/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.js +28 -28
  40. package/dist/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.js +10 -10
  41. package/dist/src/core/renderers/webgl/shaders/effects/RadialProgressEffect.js +37 -37
  42. package/dist/src/core/renderers/webgl/shaders/effects/RadiusEffect.js +19 -19
  43. package/dist/src/core/textures/ImageTexture.d.ts +1 -1
  44. package/dist/src/core/textures/ImageTexture.js +1 -1
  45. package/dist/src/core/textures/ImageTexture.js.map +1 -1
  46. package/dist/src/core/textures/Texture.d.ts +4 -0
  47. package/dist/src/core/textures/Texture.js +9 -3
  48. package/dist/src/core/textures/Texture.js.map +1 -1
  49. package/dist/src/main-api/Renderer.js +1 -1
  50. package/dist/tsconfig.dist.tsbuildinfo +1 -1
  51. package/exports/canvas.ts +39 -39
  52. package/exports/index.ts +89 -89
  53. package/exports/inspector.ts +24 -24
  54. package/exports/utils.ts +44 -44
  55. package/exports/webgl.ts +38 -38
  56. package/package.json +1 -1
  57. package/scripts/please-use-pnpm.js +13 -13
  58. package/src/common/CommonTypes.ts +146 -146
  59. package/src/common/EventEmitter.ts +77 -77
  60. package/src/common/IAnimationController.ts +92 -92
  61. package/src/common/IEventEmitter.ts +28 -28
  62. package/src/core/CoreNode.test.ts +202 -202
  63. package/src/core/CoreNode.ts +2468 -2468
  64. package/src/core/CoreShaderManager.ts +292 -292
  65. package/src/core/CoreTextNode.ts +455 -455
  66. package/src/core/CoreTextureManager.ts +561 -558
  67. package/src/core/Stage.ts +748 -743
  68. package/src/core/TextureMemoryManager.ts +431 -404
  69. package/src/core/animations/AnimationManager.ts +38 -38
  70. package/src/core/animations/CoreAnimation.ts +347 -347
  71. package/src/core/animations/CoreAnimationController.ts +166 -166
  72. package/src/core/lib/ContextSpy.ts +41 -41
  73. package/src/core/lib/ImageWorker.ts +280 -280
  74. package/src/core/lib/Matrix3d.ts +244 -244
  75. package/src/core/lib/RenderCoords.ts +86 -86
  76. package/src/core/lib/WebGlContextWrapper.ts +1332 -1332
  77. package/src/core/lib/textureCompression.ts +152 -152
  78. package/src/core/lib/textureSvg.ts +78 -78
  79. package/src/core/lib/utils.ts +384 -384
  80. package/src/core/lib/validateImageBitmap.ts +76 -76
  81. package/src/core/platform.ts +63 -63
  82. package/src/core/renderers/CoreContextTexture.ts +43 -43
  83. package/src/core/renderers/CoreRenderOp.ts +22 -22
  84. package/src/core/renderers/CoreRenderer.ts +115 -115
  85. package/src/core/renderers/CoreShader.ts +41 -41
  86. package/src/core/renderers/canvas/CanvasCoreRenderer.ts +375 -375
  87. package/src/core/renderers/canvas/CanvasCoreTexture.ts +153 -153
  88. package/src/core/renderers/canvas/internal/C2DShaderUtils.ts +231 -231
  89. package/src/core/renderers/canvas/internal/ColorUtils.ts +69 -69
  90. package/src/core/renderers/canvas/shaders/UnsupportedShader.ts +48 -48
  91. package/src/core/renderers/webgl/WebGlCoreCtxRenderTexture.ts +91 -86
  92. package/src/core/renderers/webgl/WebGlCoreCtxSubTexture.ts +50 -50
  93. package/src/core/renderers/webgl/WebGlCoreCtxTexture.ts +313 -301
  94. package/src/core/renderers/webgl/WebGlCoreRenderOp.ts +125 -125
  95. package/src/core/renderers/webgl/WebGlCoreRenderer.ts +821 -821
  96. package/src/core/renderers/webgl/WebGlCoreShader.ts +365 -365
  97. package/src/core/renderers/webgl/internal/BufferCollection.ts +54 -54
  98. package/src/core/renderers/webgl/internal/RendererUtils.ts +155 -155
  99. package/src/core/renderers/webgl/internal/ShaderUtils.ts +143 -143
  100. package/src/core/renderers/webgl/internal/WebGlUtils.ts +35 -35
  101. package/src/core/renderers/webgl/shaders/DefaultShader.ts +93 -93
  102. package/src/core/renderers/webgl/shaders/DefaultShaderBatched.ts +132 -132
  103. package/src/core/renderers/webgl/shaders/DynamicShader.ts +580 -580
  104. package/src/core/renderers/webgl/shaders/RoundedRectangle.ts +167 -167
  105. package/src/core/renderers/webgl/shaders/SdfShader.ts +204 -204
  106. package/src/core/renderers/webgl/shaders/effects/BorderBottomEffect.ts +101 -101
  107. package/src/core/renderers/webgl/shaders/effects/BorderEffect.ts +87 -87
  108. package/src/core/renderers/webgl/shaders/effects/BorderLeftEffect.ts +101 -101
  109. package/src/core/renderers/webgl/shaders/effects/BorderRightEffect.ts +101 -101
  110. package/src/core/renderers/webgl/shaders/effects/BorderTopEffect.ts +101 -101
  111. package/src/core/renderers/webgl/shaders/effects/EffectUtils.ts +159 -159
  112. package/src/core/renderers/webgl/shaders/effects/FadeOutEffect.ts +127 -127
  113. package/src/core/renderers/webgl/shaders/effects/GlitchEffect.ts +148 -148
  114. package/src/core/renderers/webgl/shaders/effects/GrayscaleEffect.ts +67 -67
  115. package/src/core/renderers/webgl/shaders/effects/HolePunchEffect.ts +157 -157
  116. package/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.ts +171 -171
  117. package/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.ts +168 -168
  118. package/src/core/renderers/webgl/shaders/effects/RadialProgressEffect.ts +187 -187
  119. package/src/core/renderers/webgl/shaders/effects/RadiusEffect.ts +110 -110
  120. package/src/core/renderers/webgl/shaders/effects/ShaderEffect.ts +196 -196
  121. package/src/core/text-rendering/TextRenderingUtils.ts +36 -36
  122. package/src/core/text-rendering/TextTextureRendererUtils.ts +263 -263
  123. package/src/core/text-rendering/TrFontManager.ts +183 -183
  124. package/src/core/text-rendering/font-face-types/SdfTrFontFace/SdfTrFontFace.ts +176 -176
  125. package/src/core/text-rendering/font-face-types/SdfTrFontFace/internal/FontShaper.ts +139 -139
  126. package/src/core/text-rendering/font-face-types/SdfTrFontFace/internal/SdfFontShaper.test.ts +173 -173
  127. package/src/core/text-rendering/font-face-types/SdfTrFontFace/internal/SdfFontShaper.ts +171 -171
  128. package/src/core/text-rendering/font-face-types/TrFontFace.ts +187 -187
  129. package/src/core/text-rendering/font-face-types/WebTrFontFace.ts +94 -94
  130. package/src/core/text-rendering/font-face-types/utils.ts +39 -39
  131. package/src/core/text-rendering/renderers/CanvasTextRenderer.ts +509 -509
  132. package/src/core/text-rendering/renderers/LightningTextTextureRenderer.ts +808 -808
  133. package/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.ts +853 -853
  134. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/PeekableGenerator.test.ts +48 -48
  135. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/PeekableGenerator.ts +66 -66
  136. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/SpecialCodepoints.ts +52 -52
  137. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/constants.ts +32 -32
  138. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/getStartConditions.ts +117 -117
  139. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/getUnicodeCodepoints.test.ts +133 -133
  140. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/getUnicodeCodepoints.ts +38 -38
  141. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/layoutText.ts +408 -408
  142. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/measureText.test.ts +49 -49
  143. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/measureText.ts +52 -52
  144. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/setRenderWindow.test.ts +205 -205
  145. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/setRenderWindow.ts +93 -93
  146. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/util.ts +40 -40
  147. package/src/core/text-rendering/renderers/TextRenderer.ts +557 -557
  148. package/src/core/textures/ColorTexture.ts +102 -102
  149. package/src/core/textures/ImageTexture.ts +400 -399
  150. package/src/core/textures/NoiseTexture.ts +104 -104
  151. package/src/core/textures/RenderTexture.ts +85 -85
  152. package/src/core/textures/SubTexture.ts +205 -205
  153. package/src/core/textures/Texture.ts +376 -367
  154. package/src/core/utils.ts +227 -227
  155. package/src/env.d.ts +7 -7
  156. package/src/main-api/DynamicShaderController.ts +104 -104
  157. package/src/main-api/INode.ts +101 -101
  158. package/src/main-api/Inspector.ts +522 -522
  159. package/src/main-api/Renderer.ts +751 -751
  160. package/src/main-api/ShaderController.ts +80 -80
  161. package/src/main-api/utils.ts +45 -45
  162. package/src/utils.ts +248 -248
  163. package/COPYING +0 -1
  164. package/dist/exports/canvas-shaders.d.ts +0 -10
  165. package/dist/exports/canvas-shaders.js +0 -27
  166. package/dist/exports/canvas-shaders.js.map +0 -1
  167. package/dist/exports/webgl-shaders.d.ts +0 -11
  168. package/dist/exports/webgl-shaders.js +0 -28
  169. package/dist/exports/webgl-shaders.js.map +0 -1
  170. package/dist/src/core/platforms/Platform.d.ts +0 -37
  171. package/dist/src/core/platforms/Platform.js +0 -22
  172. package/dist/src/core/platforms/Platform.js.map +0 -1
  173. package/dist/src/core/platforms/web/WebPlatform.d.ts +0 -9
  174. package/dist/src/core/platforms/web/WebPlatform.js +0 -58
  175. package/dist/src/core/platforms/web/WebPlatform.js.map +0 -1
  176. package/dist/src/core/renderers/CoreShaderNode.d.ts +0 -58
  177. package/dist/src/core/renderers/CoreShaderNode.js +0 -104
  178. package/dist/src/core/renderers/CoreShaderNode.js.map +0 -1
  179. package/dist/src/core/renderers/CoreShaderProgram.d.ts +0 -4
  180. package/dist/src/core/renderers/CoreShaderProgram.js +0 -20
  181. package/dist/src/core/renderers/CoreShaderProgram.js.map +0 -1
  182. package/dist/src/core/renderers/canvas/CanvasRenderer.d.ts +0 -36
  183. package/dist/src/core/renderers/canvas/CanvasRenderer.js +0 -212
  184. package/dist/src/core/renderers/canvas/CanvasRenderer.js.map +0 -1
  185. package/dist/src/core/renderers/canvas/CanvasShaderNode.d.ts +0 -21
  186. package/dist/src/core/renderers/canvas/CanvasShaderNode.js +0 -60
  187. package/dist/src/core/renderers/canvas/CanvasShaderNode.js.map +0 -1
  188. package/dist/src/core/renderers/canvas/CanvasTexture.d.ts +0 -16
  189. package/dist/src/core/renderers/canvas/CanvasTexture.js +0 -124
  190. package/dist/src/core/renderers/canvas/CanvasTexture.js.map +0 -1
  191. package/dist/src/core/renderers/webgl/WebGlCtxRenderTexture.d.ts +0 -12
  192. package/dist/src/core/renderers/webgl/WebGlCtxRenderTexture.js +0 -55
  193. package/dist/src/core/renderers/webgl/WebGlCtxRenderTexture.js.map +0 -1
  194. package/dist/src/core/renderers/webgl/WebGlCtxSubTexture.d.ts +0 -9
  195. package/dist/src/core/renderers/webgl/WebGlCtxSubTexture.js +0 -38
  196. package/dist/src/core/renderers/webgl/WebGlCtxSubTexture.js.map +0 -1
  197. package/dist/src/core/renderers/webgl/WebGlCtxTexture.d.ts +0 -57
  198. package/dist/src/core/renderers/webgl/WebGlCtxTexture.js +0 -227
  199. package/dist/src/core/renderers/webgl/WebGlCtxTexture.js.map +0 -1
  200. package/dist/src/core/renderers/webgl/WebGlRenderOp.d.ts +0 -44
  201. package/dist/src/core/renderers/webgl/WebGlRenderOp.js +0 -118
  202. package/dist/src/core/renderers/webgl/WebGlRenderOp.js.map +0 -1
  203. package/dist/src/core/renderers/webgl/WebGlRenderer.d.ts +0 -135
  204. package/dist/src/core/renderers/webgl/WebGlRenderer.js +0 -571
  205. package/dist/src/core/renderers/webgl/WebGlRenderer.js.map +0 -1
  206. package/dist/src/core/renderers/webgl/WebGlShaderNode.d.ts +0 -222
  207. package/dist/src/core/renderers/webgl/WebGlShaderNode.js +0 -334
  208. package/dist/src/core/renderers/webgl/WebGlShaderNode.js.map +0 -1
  209. package/dist/src/core/renderers/webgl/WebGlShaderProgram.d.ts +0 -35
  210. package/dist/src/core/renderers/webgl/WebGlShaderProgram.js +0 -201
  211. package/dist/src/core/renderers/webgl/WebGlShaderProgram.js.map +0 -1
  212. package/dist/src/core/shaders/canvas/Border.d.ts +0 -9
  213. package/dist/src/core/shaders/canvas/Border.js +0 -57
  214. package/dist/src/core/shaders/canvas/Border.js.map +0 -1
  215. package/dist/src/core/shaders/canvas/HolePunch.d.ts +0 -7
  216. package/dist/src/core/shaders/canvas/HolePunch.js +0 -38
  217. package/dist/src/core/shaders/canvas/HolePunch.js.map +0 -1
  218. package/dist/src/core/shaders/canvas/LinearGradient.d.ts +0 -10
  219. package/dist/src/core/shaders/canvas/LinearGradient.js +0 -46
  220. package/dist/src/core/shaders/canvas/LinearGradient.js.map +0 -1
  221. package/dist/src/core/shaders/canvas/RadialGradient.d.ts +0 -11
  222. package/dist/src/core/shaders/canvas/RadialGradient.js +0 -68
  223. package/dist/src/core/shaders/canvas/RadialGradient.js.map +0 -1
  224. package/dist/src/core/shaders/canvas/Rounded.d.ts +0 -7
  225. package/dist/src/core/shaders/canvas/Rounded.js +0 -33
  226. package/dist/src/core/shaders/canvas/Rounded.js.map +0 -1
  227. package/dist/src/core/shaders/canvas/RoundedWithBorder.d.ts +0 -7
  228. package/dist/src/core/shaders/canvas/RoundedWithBorder.js +0 -41
  229. package/dist/src/core/shaders/canvas/RoundedWithBorder.js.map +0 -1
  230. package/dist/src/core/shaders/canvas/RoundedWithBorderAndShadow.d.ts +0 -8
  231. package/dist/src/core/shaders/canvas/RoundedWithBorderAndShadow.js +0 -39
  232. package/dist/src/core/shaders/canvas/RoundedWithBorderAndShadow.js.map +0 -1
  233. package/dist/src/core/shaders/canvas/RoundedWithShadow.d.ts +0 -7
  234. package/dist/src/core/shaders/canvas/RoundedWithShadow.js +0 -38
  235. package/dist/src/core/shaders/canvas/RoundedWithShadow.js.map +0 -1
  236. package/dist/src/core/shaders/canvas/Shadow.d.ts +0 -8
  237. package/dist/src/core/shaders/canvas/Shadow.js +0 -31
  238. package/dist/src/core/shaders/canvas/Shadow.js.map +0 -1
  239. package/dist/src/core/shaders/canvas/utils/render.d.ts +0 -5
  240. package/dist/src/core/shaders/canvas/utils/render.js +0 -84
  241. package/dist/src/core/shaders/canvas/utils/render.js.map +0 -1
  242. package/dist/src/core/shaders/templates/BorderTemplate.d.ts +0 -37
  243. package/dist/src/core/shaders/templates/BorderTemplate.js +0 -73
  244. package/dist/src/core/shaders/templates/BorderTemplate.js.map +0 -1
  245. package/dist/src/core/shaders/templates/HolePunchTemplate.d.ts +0 -46
  246. package/dist/src/core/shaders/templates/HolePunchTemplate.js +0 -35
  247. package/dist/src/core/shaders/templates/HolePunchTemplate.js.map +0 -1
  248. package/dist/src/core/shaders/templates/LinearGradientTemplate.d.ts +0 -23
  249. package/dist/src/core/shaders/templates/LinearGradientTemplate.js +0 -47
  250. package/dist/src/core/shaders/templates/LinearGradientTemplate.js.map +0 -1
  251. package/dist/src/core/shaders/templates/RadialGradientTemplate.d.ts +0 -31
  252. package/dist/src/core/shaders/templates/RadialGradientTemplate.js +0 -49
  253. package/dist/src/core/shaders/templates/RadialGradientTemplate.js.map +0 -1
  254. package/dist/src/core/shaders/templates/RoundedTemplate.d.ts +0 -29
  255. package/dist/src/core/shaders/templates/RoundedTemplate.js +0 -67
  256. package/dist/src/core/shaders/templates/RoundedTemplate.js.map +0 -1
  257. package/dist/src/core/shaders/templates/RoundedWithBorderAndShadowTemplate.d.ts +0 -7
  258. package/dist/src/core/shaders/templates/RoundedWithBorderAndShadowTemplate.js +0 -24
  259. package/dist/src/core/shaders/templates/RoundedWithBorderAndShadowTemplate.js.map +0 -1
  260. package/dist/src/core/shaders/templates/RoundedWithBorderTemplate.d.ts +0 -6
  261. package/dist/src/core/shaders/templates/RoundedWithBorderTemplate.js +0 -23
  262. package/dist/src/core/shaders/templates/RoundedWithBorderTemplate.js.map +0 -1
  263. package/dist/src/core/shaders/templates/RoundedWithShadowTemplate.d.ts +0 -6
  264. package/dist/src/core/shaders/templates/RoundedWithShadowTemplate.js +0 -23
  265. package/dist/src/core/shaders/templates/RoundedWithShadowTemplate.js.map +0 -1
  266. package/dist/src/core/shaders/templates/ShadowTemplate.d.ts +0 -34
  267. package/dist/src/core/shaders/templates/ShadowTemplate.js +0 -66
  268. package/dist/src/core/shaders/templates/ShadowTemplate.js.map +0 -1
  269. package/dist/src/core/shaders/templates/shaderUtils.d.ts +0 -5
  270. package/dist/src/core/shaders/templates/shaderUtils.js +0 -41
  271. package/dist/src/core/shaders/templates/shaderUtils.js.map +0 -1
  272. package/dist/src/core/shaders/webgl/Border.d.ts +0 -3
  273. package/dist/src/core/shaders/webgl/Border.js +0 -110
  274. package/dist/src/core/shaders/webgl/Border.js.map +0 -1
  275. package/dist/src/core/shaders/webgl/Default.d.ts +0 -2
  276. package/dist/src/core/shaders/webgl/Default.js +0 -86
  277. package/dist/src/core/shaders/webgl/Default.js.map +0 -1
  278. package/dist/src/core/shaders/webgl/DefaultBatched.d.ts +0 -2
  279. package/dist/src/core/shaders/webgl/DefaultBatched.js +0 -104
  280. package/dist/src/core/shaders/webgl/DefaultBatched.js.map +0 -1
  281. package/dist/src/core/shaders/webgl/HolePunch.d.ts +0 -3
  282. package/dist/src/core/shaders/webgl/HolePunch.js +0 -64
  283. package/dist/src/core/shaders/webgl/HolePunch.js.map +0 -1
  284. package/dist/src/core/shaders/webgl/LinearGradient.d.ts +0 -3
  285. package/dist/src/core/shaders/webgl/LinearGradient.js +0 -75
  286. package/dist/src/core/shaders/webgl/LinearGradient.js.map +0 -1
  287. package/dist/src/core/shaders/webgl/RadialGradient.d.ts +0 -3
  288. package/dist/src/core/shaders/webgl/RadialGradient.js +0 -73
  289. package/dist/src/core/shaders/webgl/RadialGradient.js.map +0 -1
  290. package/dist/src/core/shaders/webgl/Rounded.d.ts +0 -7
  291. package/dist/src/core/shaders/webgl/Rounded.js +0 -86
  292. package/dist/src/core/shaders/webgl/Rounded.js.map +0 -1
  293. package/dist/src/core/shaders/webgl/RoundedWithBorder.d.ts +0 -3
  294. package/dist/src/core/shaders/webgl/RoundedWithBorder.js +0 -129
  295. package/dist/src/core/shaders/webgl/RoundedWithBorder.js.map +0 -1
  296. package/dist/src/core/shaders/webgl/RoundedWithBorderAndShadow.d.ts +0 -3
  297. package/dist/src/core/shaders/webgl/RoundedWithBorderAndShadow.js +0 -149
  298. package/dist/src/core/shaders/webgl/RoundedWithBorderAndShadow.js.map +0 -1
  299. package/dist/src/core/shaders/webgl/RoundedWithShadow.d.ts +0 -3
  300. package/dist/src/core/shaders/webgl/RoundedWithShadow.js +0 -84
  301. package/dist/src/core/shaders/webgl/RoundedWithShadow.js.map +0 -1
  302. package/dist/src/core/shaders/webgl/SdfShader.d.ts +0 -32
  303. package/dist/src/core/shaders/webgl/SdfShader.js +0 -116
  304. package/dist/src/core/shaders/webgl/SdfShader.js.map +0 -1
  305. package/dist/src/core/shaders/webgl/Shadow.d.ts +0 -3
  306. package/dist/src/core/shaders/webgl/Shadow.js +0 -110
  307. package/dist/src/core/shaders/webgl/Shadow.js.map +0 -1
  308. package/dist/src/core/temp.js +0 -77
  309. package/dist/src/core/temp.js.map +0 -1
  310. /package/dist/src/core/{temp.d.ts → renderers/webgl/WebGlCoreShader.destroy.d.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"DefaultBatched.js","sourceRoot":"","sources":["../../../../../src/core/shaders/webgl/DefaultBatched.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAsBH,MAAM,CAAC,MAAM,cAAc,GAAoB;IAC7C,uBAAuB,EAAE,IAAI;IAE7B,0DAA0D;IAC1D,oCAAoC;IACpC,SAAS;IACT,iFAAiF;IACjF,QAAQ;IACR,uBAAuB;IACvB,6HAA6H;IAC7H,SAAS;IACT,MAAM;IACN,gCAAgC;IAChC,4BAA4B;IAC5B,qCAAqC;IACrC,QAAQ;IACR,+DAA+D;IAC/D,oDAAoD;IACpD,IAAI;IAEJ,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCP;IACD,QAAQ,CAAC,QAAQ;QACf,MAAM,YAAY,GAChB,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,8BAA8B,CAAC;QAC5D,OAAO;sBACW,YAAY;;;;;;;;;;;;;;;kDAegB,YAAY;UACpD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;aACrC,GAAG,CACF,CAAC,GAAG,EAAE,EAAE,CAAC;YACT,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,cAAc,GAAG;wCACb,GAAG;;SAElC,CACE;aACA,IAAI,CAAC,EAAE,CAAC;;;;;;;KAOd,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { type HolePunchProps } from '../templates/HolePunchTemplate.js';
2
- import type { WebGlShaderType } from '../../renderers/webgl/WebGlShaderNode.js';
3
- export declare const HolePunch: WebGlShaderType<HolePunchProps>;
@@ -1,64 +0,0 @@
1
- /*
2
- * Copyright 2023 Comcast Cable Communications Management, LLC
3
- * Licensed under the Apache License, Version 2.0 (the "License");
4
- * you may not use this file except in compliance with the License.
5
- * You may obtain a copy of the License at
6
- *
7
- * http://www.apache.org/licenses/LICENSE-2.0
8
- *
9
- * Unless required by applicable law or agreed to in writing, software
10
- * distributed under the License is distributed on an "AS IS" BASIS,
11
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- * See the License for the specific language governing permissions and
13
- * limitations under the License.
14
- *
15
- * SPDX-License-Identifier: Apache-2.0
16
- */
17
- import { calcFactoredRadiusArray } from '../../lib/utils.js';
18
- import { HolePunchTemplate, } from '../templates/HolePunchTemplate.js';
19
- export const HolePunch = {
20
- props: HolePunchTemplate.props,
21
- update() {
22
- this.uniform2f('u_pos', this.props.x, this.props.y);
23
- //precalculate to halfSize once instead of for every pixel
24
- this.uniform2f('u_size', this.props.width * 0.5, this.props.height * 0.5);
25
- this.uniform4fa('u_radius', calcFactoredRadiusArray(this.props.radius, this.props.width, this.props.height));
26
- },
27
- getCacheMarkers(props) {
28
- return `radiusArray:${Array.isArray(props.radius)}`;
29
- },
30
- fragment: `
31
- # ifdef GL_FRAGMENT_PRECISION_HIGH
32
- precision highp float;
33
- # else
34
- precision mediump float;
35
- # endif
36
-
37
- uniform float u_alpha;
38
- uniform float u_pixelRatio;
39
- uniform vec2 u_dimensions;
40
- uniform sampler2D u_texture;
41
-
42
- uniform vec2 u_size;
43
- uniform vec2 u_pos;
44
-
45
- uniform vec4 u_radius;
46
-
47
- uniform vec4 u_color;
48
- varying vec4 v_color;
49
- varying vec2 v_textureCoords;
50
-
51
- void main() {
52
- vec4 color = texture2D(u_texture, v_textureCoords) * v_color;
53
- vec2 p = (v_textureCoords.xy * u_dimensions.xy - u_pos) - u_size;
54
- vec4 r = u_radius;
55
- r.xy = (p.x > 0.0) ? r.yz : r.xw;
56
- r.x = (p.y > 0.0) ? r.y : r.x;
57
- p = abs(p) - u_size + r.x;
58
- float dist = min(max(p.x, p.y), 0.0) + length(max(p, 0.0)) - r.x + 2.0;
59
- float roundedAlpha = 1.0 - smoothstep(0.0, u_pixelRatio, dist);
60
- gl_FragColor = mix(color, vec4(0.0), min(color.a, roundedAlpha));
61
- }
62
- `,
63
- };
64
- //# sourceMappingURL=HolePunch.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HolePunch.js","sourceRoot":"","sources":["../../../../../src/core/shaders/webgl/HolePunch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EACL,iBAAiB,GAElB,MAAM,mCAAmC,CAAC;AAI3C,MAAM,CAAC,MAAM,SAAS,GAAoC;IACxD,KAAK,EAAE,iBAAiB,CAAC,KAAK;IAC9B,MAAM;QACJ,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,KAAM,CAAC,CAAC,EAAE,IAAI,CAAC,KAAM,CAAC,CAAC,CAAC,CAAC;QACtD,0DAA0D;QAC1D,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAM,CAAC,KAAK,GAAG,GAAG,EAAE,IAAI,CAAC,KAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;QAE5E,IAAI,CAAC,UAAU,CACb,UAAU,EACV,uBAAuB,CACrB,IAAI,CAAC,KAAM,CAAC,MAAc,EAC1B,IAAI,CAAC,KAAM,CAAC,KAAK,EACjB,IAAI,CAAC,KAAM,CAAC,MAAM,CACnB,CACF,CAAC;IACJ,CAAC;IACD,eAAe,CAAC,KAAqB;QACnC,OAAO,eAAe,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;IACtD,CAAC;IACD,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCT;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { type LinearGradientProps } from '../templates/LinearGradientTemplate.js';
2
- import type { WebGlShaderType } from '../../renderers/webgl/WebGlShaderNode.js';
3
- export declare const LinearGradient: WebGlShaderType<LinearGradientProps>;
@@ -1,75 +0,0 @@
1
- /*
2
- * Copyright 2023 Comcast Cable Communications Management, LLC
3
- * Licensed under the Apache License, Version 2.0 (the "License");
4
- * you may not use this file except in compliance with the License.
5
- * You may obtain a copy of the License at
6
- *
7
- * http://www.apache.org/licenses/LICENSE-2.0
8
- *
9
- * Unless required by applicable law or agreed to in writing, software
10
- * distributed under the License is distributed on an "AS IS" BASIS,
11
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- * See the License for the specific language governing permissions and
13
- * limitations under the License.
14
- *
15
- * SPDX-License-Identifier: Apache-2.0
16
- */
17
- import { getNormalizedRgbaComponents } from '../../lib/utils.js';
18
- import { LinearGradientTemplate, } from '../templates/LinearGradientTemplate.js';
19
- import { genGradientColors } from '../../renderers/webgl/internal/ShaderUtils.js';
20
- export const LinearGradient = {
21
- props: LinearGradientTemplate.props,
22
- update() {
23
- this.uniform1f('u_angle', this.props.angle - (Math.PI / 180) * 90);
24
- this.uniform1fv('u_stops', new Float32Array(this.props.stops));
25
- const colors = [];
26
- for (let i = 0; i < this.props.colors.length; i++) {
27
- const norm = getNormalizedRgbaComponents(this.props.colors[i]);
28
- colors.push(norm[0], norm[1], norm[2], norm[3]);
29
- }
30
- this.uniform4fv('u_colors', new Float32Array(colors));
31
- },
32
- getCacheMarkers(props) {
33
- return `colors:${props.colors.length}`;
34
- },
35
- fragment(renderer, props) {
36
- return `
37
- # ifdef GL_FRAGMENT_PRECISION_HIGH
38
- precision highp float;
39
- # else
40
- precision mediump float;
41
- # endif
42
-
43
- #define PI 3.14159265359
44
-
45
- uniform float u_alpha;
46
- uniform vec2 u_dimensions;
47
-
48
- uniform sampler2D u_texture;
49
-
50
- uniform float u_angle;
51
- uniform float u_stops[${props.stops.length}];
52
- uniform vec4 u_colors[${props.colors.length}];
53
-
54
- varying vec4 v_color;
55
- varying vec2 v_textureCoords;
56
-
57
- vec2 calcPoint(float d, float angle) {
58
- return d * vec2(cos(angle), sin(angle)) + (u_dimensions * 0.5);
59
- }
60
-
61
- void main() {
62
- vec4 color = texture2D(u_texture, v_textureCoords) * v_color;
63
- float a = u_angle;
64
- float lineDist = abs(u_dimensions.x * cos(a)) + abs(u_dimensions.y * sin(a));
65
- vec2 f = calcPoint(lineDist * 0.5, a);
66
- vec2 t = calcPoint(lineDist * 0.5, a + PI);
67
- vec2 gradVec = t - f;
68
- float dist = dot(v_textureCoords.xy * u_dimensions - f, gradVec) / dot(gradVec, gradVec);
69
- ${genGradientColors(props.stops.length)}
70
- gl_FragColor = mix(color, colorOut, clamp(colorOut.a, 0.0, 1.0));
71
- }
72
- `;
73
- },
74
- };
75
- //# sourceMappingURL=LinearGradient.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LinearGradient.js","sourceRoot":"","sources":["../../../../../src/core/shaders/webgl/LinearGradient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EACL,sBAAsB,GAEvB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAIlF,MAAM,CAAC,MAAM,cAAc,GAAyC;IAClE,KAAK,EAAE,sBAAsB,CAAC,KAAK;IACnC,MAAM;QACJ,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,KAAM,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,KAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAChE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACnD,MAAM,IAAI,GAAG,2BAA2B,CAAC,IAAI,CAAC,KAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC;YACjE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IACxD,CAAC;IACD,eAAe,CAAC,KAA0B;QACxC,OAAO,UAAU,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACzC,CAAC;IACD,QAAQ,CAAC,QAAuB,EAAE,KAA0B;QAC1D,OAAO;;;;;;;;;;;;;;;4BAeiB,KAAK,CAAC,KAAK,CAAC,MAAM;4BAClB,KAAK,CAAC,MAAM,CAAC,MAAM;;;;;;;;;;;;;;;;;QAiBvC,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;;;GAG1C,CAAC;IACF,CAAC;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { type RadialGradientProps } from '../templates/RadialGradientTemplate.js';
2
- import type { WebGlShaderType } from '../../renderers/webgl/WebGlShaderNode.js';
3
- export declare const RadialGradient: WebGlShaderType<RadialGradientProps>;
@@ -1,73 +0,0 @@
1
- /*
2
- * Copyright 2023 Comcast Cable Communications Management, LLC
3
- * Licensed under the Apache License, Version 2.0 (the "License");
4
- * you may not use this file except in compliance with the License.
5
- * You may obtain a copy of the License at
6
- *
7
- * http://www.apache.org/licenses/LICENSE-2.0
8
- *
9
- * Unless required by applicable law or agreed to in writing, software
10
- * distributed under the License is distributed on an "AS IS" BASIS,
11
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- * See the License for the specific language governing permissions and
13
- * limitations under the License.
14
- *
15
- * SPDX-License-Identifier: Apache-2.0
16
- */
17
- import { getNormalizedRgbaComponents } from '../../lib/utils.js';
18
- import { RadialGradientTemplate, } from '../templates/RadialGradientTemplate.js';
19
- import { genGradientColors } from '../../renderers/webgl/internal/ShaderUtils.js';
20
- export const RadialGradient = {
21
- props: RadialGradientTemplate.props,
22
- update(node) {
23
- this.uniform2f('u_projection', this.props.pivot[0] * node.width, this.props.pivot[1] * node.height);
24
- this.uniform2f('u_size', this.props.width * 0.5, this.props.height * 0.5);
25
- this.uniform1fv('u_stops', new Float32Array(this.props.stops));
26
- const colors = [];
27
- for (let i = 0; i < this.props.colors.length; i++) {
28
- const norm = getNormalizedRgbaComponents(this.props.colors[i]);
29
- colors.push(norm[0], norm[1], norm[2], norm[3]);
30
- }
31
- this.uniform4fv('u_colors', new Float32Array(colors));
32
- },
33
- getCacheMarkers(props) {
34
- return `colors:${props.colors.length}`;
35
- },
36
- fragment(renderer, props) {
37
- return `
38
- # ifdef GL_FRAGMENT_PRECISION_HIGH
39
- precision highp float;
40
- # else
41
- precision mediump float;
42
- # endif
43
-
44
- #define PI 3.14159265359
45
-
46
- uniform float u_alpha;
47
- uniform vec2 u_dimensions;
48
-
49
- uniform sampler2D u_texture;
50
-
51
- uniform vec2 u_projection;
52
- uniform vec2 u_size;
53
- uniform float u_stops[${props.stops.length}];
54
- uniform vec4 u_colors[${props.colors.length}];
55
-
56
- varying vec4 v_color;
57
- varying vec2 v_textureCoords;
58
-
59
- vec2 calcPoint(float d, float angle) {
60
- return d * vec2(cos(angle), sin(angle)) + (u_dimensions * 0.5);
61
- }
62
-
63
- void main() {
64
- vec4 color = texture2D(u_texture, v_textureCoords) * v_color;
65
- vec2 point = v_textureCoords.xy * u_dimensions;
66
- float dist = length((point - u_projection) / u_size);
67
- ${genGradientColors(props.stops.length)}
68
- gl_FragColor = mix(color, colorOut, clamp(colorOut.a, 0.0, 1.0));
69
- }
70
- `;
71
- },
72
- };
73
- //# sourceMappingURL=RadialGradient.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RadialGradient.js","sourceRoot":"","sources":["../../../../../src/core/shaders/webgl/RadialGradient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EACL,sBAAsB,GAEvB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAIlF,MAAM,CAAC,MAAM,cAAc,GAAyC;IAClE,KAAK,EAAE,sBAAsB,CAAC,KAAK;IACnC,MAAM,CAAC,IAAc;QACnB,IAAI,CAAC,SAAS,CACZ,cAAc,EACd,IAAI,CAAC,KAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,EACjC,IAAI,CAAC,KAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CACnC,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAM,CAAC,KAAK,GAAG,GAAG,EAAE,IAAI,CAAC,KAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;QAC5E,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,KAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAChE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACnD,MAAM,IAAI,GAAG,2BAA2B,CAAC,IAAI,CAAC,KAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,CAAC;YACjE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;IACxD,CAAC;IACD,eAAe,CAAC,KAA0B;QACxC,OAAO,UAAU,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACzC,CAAC;IACD,QAAQ,CAAC,QAAuB,EAAE,KAA0B;QAC1D,OAAO;;;;;;;;;;;;;;;;4BAgBiB,KAAK,CAAC,KAAK,CAAC,MAAM;4BAClB,KAAK,CAAC,MAAM,CAAC,MAAM;;;;;;;;;;;;;QAavC,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;;;GAG1C,CAAC;IACF,CAAC;CACF,CAAC"}
@@ -1,7 +0,0 @@
1
- import type { WebGlShaderType } from '../../renderers/webgl/WebGlShaderNode.js';
2
- import { type RoundedProps } from '../templates/RoundedTemplate.js';
3
- /**
4
- * Similar to the {@link DefaultShader} but cuts out 4 rounded rectangle corners
5
- * as defined by the specified corner {@link RoundedProps.radius}
6
- */
7
- export declare const Rounded: WebGlShaderType<RoundedProps>;
@@ -1,86 +0,0 @@
1
- import { calcFactoredRadiusArray } from '../../lib/utils.js';
2
- import { RoundedTemplate, } from '../templates/RoundedTemplate.js';
3
- /**
4
- * Similar to the {@link DefaultShader} but cuts out 4 rounded rectangle corners
5
- * as defined by the specified corner {@link RoundedProps.radius}
6
- */
7
- export const Rounded = {
8
- props: RoundedTemplate.props,
9
- update(node) {
10
- this.uniform4fa('u_radius', calcFactoredRadiusArray(this.props.radius, node.width, node.height));
11
- },
12
- vertex: `
13
- # ifdef GL_FRAGMENT_PRECISION_HIGH
14
- precision highp float;
15
- # else
16
- precision mediump float;
17
- # endif
18
-
19
- attribute vec2 a_position;
20
- attribute vec2 a_textureCoords;
21
- attribute vec4 a_color;
22
- attribute vec2 a_nodeCoords;
23
-
24
- uniform vec2 u_resolution;
25
- uniform float u_pixelRatio;
26
- uniform vec2 u_dimensions;
27
-
28
- varying vec4 v_color;
29
- varying vec2 v_textureCoords;
30
- varying vec2 v_nodeCoords;
31
-
32
- void main() {
33
- vec2 normalized = a_position * u_pixelRatio;
34
- vec2 screenSpace = vec2(2.0 / u_resolution.x, -2.0 / u_resolution.y);
35
-
36
- v_color = a_color;
37
- v_nodeCoords = a_nodeCoords;
38
- v_textureCoords = a_textureCoords;
39
-
40
- gl_Position = vec4(normalized.x * screenSpace.x - 1.0, normalized.y * -abs(screenSpace.y) + 1.0, 0.0, 1.0);
41
- gl_Position.y = -sign(screenSpace.y) * gl_Position.y;
42
- }
43
- `,
44
- fragment: `
45
- # ifdef GL_FRAGMENT_PRECISION_HIGH
46
- precision highp float;
47
- # else
48
- precision mediump float;
49
- # endif
50
-
51
- //renderer applies these uniforms automatically
52
- uniform vec2 u_resolution;
53
- uniform vec2 u_dimensions;
54
- uniform float u_alpha;
55
- uniform sampler2D u_texture;
56
-
57
- //custom uniforms
58
- uniform vec4 u_radius;
59
-
60
- varying vec4 v_color;
61
- varying vec2 v_textureCoords;
62
- varying vec2 v_nodeCoords;
63
-
64
- float roundedBox(vec2 p, vec2 s, vec4 r) {
65
- r.xy = (p.x > 0.0) ? r.yz : r.xw;
66
- r.x = (p.y > 0.0) ? r.y : r.x;
67
- vec2 q = abs(p) - s + r.x;
68
- return (min(max(q.x, q.y), 0.0) + length(max(q, 0.0))) - r.x;
69
- }
70
-
71
- void main() {
72
- vec4 color = texture2D(u_texture, v_textureCoords) * v_color;
73
- vec2 halfDimensions = (u_dimensions * 0.5);
74
-
75
- vec2 boxUv = v_nodeCoords.xy * u_dimensions - halfDimensions;
76
- float boxDist = roundedBox(boxUv, halfDimensions, u_radius);
77
-
78
- float roundedAlpha = 1.0 - smoothstep(0.0, 1.0, boxDist);
79
-
80
- vec4 resColor = vec4(0.0);
81
- resColor = mix(resColor, color, roundedAlpha);
82
- gl_FragColor = resColor * u_alpha;
83
- }
84
- `,
85
- };
86
- //# sourceMappingURL=Rounded.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Rounded.js","sourceRoot":"","sources":["../../../../../src/core/shaders/webgl/Rounded.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EACL,eAAe,GAEhB,MAAM,iCAAiC,CAAC;AAIzC;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAkC;IACpD,KAAK,EAAE,eAAe,CAAC,KAAK;IAC5B,MAAM,CAAC,IAAc;QACnB,IAAI,CAAC,UAAU,CACb,UAAU,EACV,uBAAuB,CACrB,IAAI,CAAC,KAAM,CAAC,MAAc,EAC1B,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,CACZ,CACF,CAAC;IACJ,CAAC;IACD,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BT;IACC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCT;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { WebGlShaderType } from '../../renderers/webgl/WebGlShaderNode.js';
2
- import { type RoundedWithBorderProps } from '../templates/RoundedWithBorderTemplate.js';
3
- export declare const RoundedWithBorder: WebGlShaderType<RoundedWithBorderProps>;
@@ -1,129 +0,0 @@
1
- /*
2
- * Copyright 2023 Comcast Cable Communications Management, LLC
3
- * Licensed under the Apache License, Version 2.0 (the "License");
4
- * you may not use this file except in compliance with the License.
5
- * You may obtain a copy of the License at
6
- *
7
- * http://www.apache.org/licenses/LICENSE-2.0
8
- *
9
- * Unless required by applicable law or agreed to in writing, software
10
- * distributed under the License is distributed on an "AS IS" BASIS,
11
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- * See the License for the specific language governing permissions and
13
- * limitations under the License.
14
- *
15
- * SPDX-License-Identifier: Apache-2.0
16
- */
17
- import { calcFactoredRadiusArray } from '../../lib/utils.js';
18
- import { RoundedWithBorderTemplate, } from '../templates/RoundedWithBorderTemplate.js';
19
- export const RoundedWithBorder = {
20
- props: RoundedWithBorderTemplate.props,
21
- update(node) {
22
- this.uniformRGBA('u_borderColor', this.props['border-color']);
23
- this.uniform4fa('u_borderWidth', this.props['border-width']);
24
- this.uniform4fa('u_radius', calcFactoredRadiusArray(this.props.radius, node.width, node.height));
25
- },
26
- vertex: `
27
- # ifdef GL_FRAGMENT_PRECISION_HIGH
28
- precision highp float;
29
- # else
30
- precision mediump float;
31
- # endif
32
-
33
- attribute vec2 a_position;
34
- attribute vec2 a_textureCoords;
35
- attribute vec4 a_color;
36
- attribute vec2 a_nodeCoords;
37
-
38
- uniform vec2 u_resolution;
39
- uniform float u_pixelRatio;
40
- uniform vec2 u_dimensions;
41
-
42
- uniform vec4 u_radius;
43
- uniform vec4 u_borderWidth;
44
-
45
- varying vec4 v_color;
46
- varying vec2 v_textureCoords;
47
- varying vec2 v_nodeCoords;
48
-
49
- varying vec4 v_innerRadius;
50
- varying vec2 v_innerSize;
51
- varying vec2 v_halfDimensions;
52
-
53
- void main() {
54
- vec2 normalized = a_position * u_pixelRatio;
55
- vec2 screenSpace = vec2(2.0 / u_resolution.x, -2.0 / u_resolution.y);
56
-
57
- v_color = a_color;
58
- v_nodeCoords = a_nodeCoords;
59
- v_textureCoords = a_textureCoords;
60
-
61
- v_halfDimensions = u_dimensions * 0.5;
62
-
63
- v_innerRadius = vec4(
64
- max(0.0, u_radius.x - max(u_borderWidth.x, u_borderWidth.w) - 0.5),
65
- max(0.0, u_radius.y - max(u_borderWidth.x, u_borderWidth.y) - 0.5),
66
- max(0.0, u_radius.z - max(u_borderWidth.z, u_borderWidth.y) - 0.5),
67
- max(0.0, u_radius.w - max(u_borderWidth.z, u_borderWidth.w) - 0.5)
68
- );
69
-
70
- v_innerSize = (vec2(u_dimensions.x - (u_borderWidth[3] + u_borderWidth[1]) + 1.0, u_dimensions.y - (u_borderWidth[0] + u_borderWidth[2])) - 2.0) * 0.5;
71
-
72
- gl_Position = vec4(normalized.x * screenSpace.x - 1.0, normalized.y * -abs(screenSpace.y) + 1.0, 0.0, 1.0);
73
- gl_Position.y = -sign(screenSpace.y) * gl_Position.y;
74
- }
75
- `,
76
- fragment: `
77
- # ifdef GL_FRAGMENT_PRECISION_HIGH
78
- precision highp float;
79
- # else
80
- precision mediump float;
81
- # endif
82
-
83
- uniform vec2 u_resolution;
84
- uniform float u_pixelRatio;
85
- uniform float u_alpha;
86
- uniform vec2 u_dimensions;
87
- uniform sampler2D u_texture;
88
-
89
- uniform vec4 u_radius;
90
-
91
- uniform vec4 u_borderWidth;
92
- uniform vec4 u_borderColor;
93
-
94
- varying vec4 v_color;
95
- varying vec2 v_textureCoords;
96
- varying vec2 v_nodeCoords;
97
-
98
- varying vec2 v_halfDimensions;
99
- varying vec4 v_innerRadius;
100
- varying vec2 v_innerSize;
101
-
102
- float roundedBox(vec2 p, vec2 s, vec4 r) {
103
- r.xy = (p.x > 0.0) ? r.yz : r.xw;
104
- r.x = (p.y > 0.0) ? r.y : r.x;
105
- vec2 q = abs(p) - s + r.x;
106
- return (min(max(q.x, q.y), 0.0) + length(max(q, 0.0))) - r.x;
107
- }
108
-
109
- void main() {
110
- vec4 color = texture2D(u_texture, v_textureCoords) * v_color;
111
-
112
- vec2 boxUv = v_nodeCoords.xy * u_dimensions - v_halfDimensions;
113
- float outerDist = roundedBox(boxUv, v_halfDimensions, u_radius);
114
-
115
- float outerAlpha = 1.0 - smoothstep(0.0, 1.0, outerDist);
116
-
117
- boxUv.x += u_borderWidth.y > u_borderWidth.w ? (u_borderWidth.y - u_borderWidth.w) * 0.5 : -(u_borderWidth.w - u_borderWidth.y) * 0.5;
118
- boxUv.y += u_borderWidth.z > u_borderWidth.x ? ((u_borderWidth.z - u_borderWidth.x) * 0.5 + 0.5) : -(u_borderWidth.x - u_borderWidth.z) * 0.5;
119
-
120
- float innerDist = roundedBox(boxUv, v_innerSize, v_innerRadius);
121
- float innerAlpha = 1.0 - smoothstep(0.0, 1.0, innerDist);
122
-
123
- vec4 resColor = mix(u_borderColor, color, innerAlpha);
124
- resColor = mix(vec4(0.0), resColor, outerAlpha);
125
- gl_FragColor = resColor * u_alpha;
126
- }
127
- `,
128
- };
129
- //# sourceMappingURL=RoundedWithBorder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RoundedWithBorder.js","sourceRoot":"","sources":["../../../../../src/core/shaders/webgl/RoundedWithBorder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EACL,yBAAyB,GAE1B,MAAM,2CAA2C,CAAC;AAEnD,MAAM,CAAC,MAAM,iBAAiB,GAA4C;IACxE,KAAK,EAAE,yBAAyB,CAAC,KAAK;IACtC,MAAM,CAAC,IAAc;QACnB,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,KAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,KAAM,CAAC,cAAc,CAAS,CAAC,CAAC;QAEtE,IAAI,CAAC,UAAU,CACb,UAAU,EACV,uBAAuB,CACrB,IAAI,CAAC,KAAM,CAAC,MAAc,EAC1B,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,CACZ,CACF,CAAC;IACJ,CAAC;IACD,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDP;IACD,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDT;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { WebGlShaderType } from '../../renderers/webgl/WebGlShaderNode.js';
2
- import { type RoundedWithBorderAndShadowProps } from '../templates/RoundedWithBorderAndShadowTemplate.js';
3
- export declare const RoundedWithBorderAndShadow: WebGlShaderType<RoundedWithBorderAndShadowProps>;
@@ -1,149 +0,0 @@
1
- /*
2
- * Copyright 2023 Comcast Cable Communications Management, LLC
3
- * Licensed under the Apache License, Version 2.0 (the "License");
4
- * you may not use this file except in compliance with the License.
5
- * You may obtain a copy of the License at
6
- *
7
- * http://www.apache.org/licenses/LICENSE-2.0
8
- *
9
- * Unless required by applicable law or agreed to in writing, software
10
- * distributed under the License is distributed on an "AS IS" BASIS,
11
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- * See the License for the specific language governing permissions and
13
- * limitations under the License.
14
- *
15
- * SPDX-License-Identifier: Apache-2.0
16
- */
17
- import { calcFactoredRadiusArray } from '../../lib/utils.js';
18
- import { RoundedWithBorderAndShadowTemplate, } from '../templates/RoundedWithBorderAndShadowTemplate.js';
19
- export const RoundedWithBorderAndShadow = {
20
- props: RoundedWithBorderAndShadowTemplate.props,
21
- update(node) {
22
- this.uniformRGBA('u_borderColor', this.props['border-color']);
23
- this.uniform4fa('u_borderWidth', this.props['border-width']);
24
- this.uniformRGBA('u_shadowColor', this.props['shadow-color']);
25
- this.uniform4fa('u_shadow', this.props['shadow-projection']);
26
- this.uniform4fa('u_radius', calcFactoredRadiusArray(this.props.radius, node.width, node.height));
27
- },
28
- vertex: `
29
- # ifdef GL_FRAGMENT_PRECISION_HIGH
30
- precision highp float;
31
- # else
32
- precision mediump float;
33
- # endif
34
-
35
- attribute vec2 a_position;
36
- attribute vec2 a_textureCoords;
37
- attribute vec4 a_color;
38
- attribute vec2 a_nodeCoords;
39
-
40
- uniform vec2 u_resolution;
41
- uniform float u_pixelRatio;
42
- uniform float u_rtt;
43
- uniform vec2 u_dimensions;
44
-
45
- uniform vec4 u_shadow;
46
- uniform vec4 u_radius;
47
- uniform vec4 u_borderWidth;
48
-
49
- varying vec4 v_color;
50
- varying vec2 v_textureCoords;
51
- varying vec2 v_nodeCoords;
52
-
53
- varying vec4 v_innerRadius;
54
- varying vec2 v_innerSize;
55
- varying vec2 v_halfDimensions;
56
-
57
- void main() {
58
- vec2 screenSpace = vec2(2.0 / u_resolution.x, -2.0 / u_resolution.y);
59
- vec2 outerEdge = clamp(a_nodeCoords * 2.0 - vec2(1.0), -1.0, 1.0);
60
-
61
- vec2 shadowEdge = outerEdge * ((u_shadow.w * 2.0)+ u_shadow.z) + u_shadow.xy;
62
- vec2 normVertexPos = a_position * u_pixelRatio;
63
-
64
- vec2 vertexPos = (a_position + outerEdge + shadowEdge) * u_pixelRatio;
65
- gl_Position = vec4(vertexPos.x * screenSpace.x - 1.0, -sign(screenSpace.y) * (vertexPos.y * -abs(screenSpace.y)) + 1.0, 0.0, 1.0);
66
-
67
- v_halfDimensions = u_dimensions * 0.5;
68
-
69
- v_innerRadius = vec4(
70
- max(0.0, u_radius.x - max(u_borderWidth.x, u_borderWidth.w) - 0.5),
71
- max(0.0, u_radius.y - max(u_borderWidth.x, u_borderWidth.y) - 0.5),
72
- max(0.0, u_radius.z - max(u_borderWidth.z, u_borderWidth.y) - 0.5),
73
- max(0.0, u_radius.w - max(u_borderWidth.z, u_borderWidth.w) - 0.5)
74
- );
75
-
76
- v_innerSize = (vec2(u_dimensions.x - (u_borderWidth[3] + u_borderWidth[1]) - 1.0, u_dimensions.y - (u_borderWidth[0] + u_borderWidth[2])) - 2.0) * 0.5;
77
-
78
- v_color = a_color;
79
- v_nodeCoords = a_nodeCoords + (screenSpace + shadowEdge) / (u_dimensions);
80
- v_textureCoords = a_textureCoords + (screenSpace + shadowEdge) / (u_dimensions);
81
- }
82
- `,
83
- fragment: `
84
- # ifdef GL_FRAGMENT_PRECISION_HIGH
85
- precision highp float;
86
- # else
87
- precision mediump float;
88
- # endif
89
-
90
- uniform vec2 u_resolution;
91
- uniform float u_pixelRatio;
92
- uniform float u_alpha;
93
- uniform vec2 u_dimensions;
94
- uniform sampler2D u_texture;
95
- uniform float u_rtt;
96
-
97
- uniform vec4 u_radius;
98
- uniform vec4 u_borderWidth;
99
- uniform vec4 u_borderColor;
100
- uniform vec4 u_shadowColor;
101
- uniform vec4 u_shadow;
102
-
103
- varying vec4 v_color;
104
- varying vec2 v_textureCoords;
105
- varying vec2 v_nodeCoords;
106
-
107
- varying vec2 v_halfDimensions;
108
- varying vec4 v_innerRadius;
109
- varying vec2 v_innerSize;
110
-
111
- float roundedBox(vec2 p, vec2 s, vec4 r) {
112
- r.xy = (p.x > 0.0) ? r.yz : r.xw;
113
- r.x = (p.y > 0.0) ? r.y : r.x;
114
- vec2 q = abs(p) - s + r.x;
115
- return (min(max(q.x, q.y), 0.0) + length(max(q, 0.0))) - r.x;
116
- }
117
-
118
- float shadowBox(vec2 p, vec2 s, vec4 r) {
119
- r.xy = (p.x > 0.0) ? r.yz : r.xw;
120
- r.x = (p.y > 0.0) ? r.y : r.x;
121
- vec2 q = abs(p) - s + r.x;
122
- float dist = min(max(q.x, q.y), 0.0) + length(max(q, 0.0)) - r.x;
123
- return 1.0 - smoothstep(-u_shadow.w, u_shadow.w + u_shadow.z, dist);
124
- }
125
-
126
- void main() {
127
- vec4 color = texture2D(u_texture, v_textureCoords) * v_color;
128
-
129
- vec2 boxUv = v_nodeCoords.xy * u_dimensions - v_halfDimensions;
130
- float outerDist = roundedBox(boxUv, v_halfDimensions - 1.0, u_radius);
131
-
132
- float outerAlpha = 1.0 - smoothstep(0.0, 1.0, outerDist);
133
-
134
- boxUv.x += u_borderWidth.y > u_borderWidth.w ? (u_borderWidth.y - u_borderWidth.w) * 0.5 : -(u_borderWidth.w - u_borderWidth.y) * 0.5;
135
- boxUv.y += u_borderWidth.z > u_borderWidth.x ? ((u_borderWidth.z - u_borderWidth.x) * 0.5 + 0.5) : -(u_borderWidth.x - u_borderWidth.z) * 0.5;
136
-
137
- float innerDist = roundedBox(boxUv, v_innerSize, v_innerRadius);
138
- float innerAlpha = 1.0 - smoothstep(0.0, 1.0, innerDist);
139
-
140
- float shadowAlpha = shadowBox(boxUv - u_shadow.xy, v_halfDimensions + u_shadow.w, u_radius + u_shadow.z);
141
-
142
- vec4 shadow = mix(vec4(0.0), u_shadowColor, shadowAlpha);
143
- vec4 resColor = mix(u_borderColor, color, innerAlpha);
144
- resColor = mix(shadow, resColor, outerAlpha);
145
- gl_FragColor = resColor * u_alpha;
146
- }
147
- `,
148
- };
149
- //# sourceMappingURL=RoundedWithBorderAndShadow.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RoundedWithBorderAndShadow.js","sourceRoot":"","sources":["../../../../../src/core/shaders/webgl/RoundedWithBorderAndShadow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EACL,kCAAkC,GAEnC,MAAM,oDAAoD,CAAC;AAE5D,MAAM,CAAC,MAAM,0BAA0B,GACrC;IACE,KAAK,EAAE,kCAAkC,CAAC,KAAK;IAC/C,MAAM,CAAC,IAAc;QACnB,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,KAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,KAAM,CAAC,cAAc,CAAS,CAAC,CAAC;QAEtE,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,KAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,KAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAE9D,IAAI,CAAC,UAAU,CACb,UAAU,EACV,uBAAuB,CACrB,IAAI,CAAC,KAAM,CAAC,MAAc,EAC1B,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,MAAM,CACZ,CACF,CAAC;IACJ,CAAC;IACD,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDT;IACC,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEX;CACA,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { WebGlShaderType } from '../../renderers/webgl/WebGlShaderNode.js';
2
- import { type RoundedWithShadowProps } from '../templates/RoundedWithShadowTemplate.js';
3
- export declare const RoundedWithShadow: WebGlShaderType<RoundedWithShadowProps>;