shaders 3.0.451 → 3.0.453

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 (519) hide show
  1. package/dist/cli.js +2 -2
  2. package/dist/core/{AngularBlur-4jt7bNoF.js → AngularBlur-B0m-LKoD.js} +2 -2
  3. package/dist/core/{Arc-DXIfbBgd.js → Arc-DhhcsMqr.js} +3 -3
  4. package/dist/core/{Ascii-GDof03Ca.js → Ascii-BiFuRRQ1.js} +2 -2
  5. package/dist/core/{Aurora-CS4vewUW.js → Aurora-B35I8qRz.js} +4 -4
  6. package/dist/core/{BarShift-BtnYLQ0B.js → BarShift-C_waFkRO.js} +3 -3
  7. package/dist/core/{BarnDoors-Dw9K-amf.js → BarnDoors-Cnyfsla8.js} +2 -2
  8. package/dist/core/{Beam-D_cyaMjJ.js → Beam-BPBmQMGD.js} +2 -2
  9. package/dist/core/{Bend-CSs5UIh8.js → Bend-Bq1Qlhq4.js} +2 -2
  10. package/dist/core/{Blob-h25zA5WH.js → Blob-BtInePsq.js} +3 -3
  11. package/dist/core/{BlockDissolve-CKN_KvLP.js → BlockDissolve-i8V6gmZw.js} +3 -3
  12. package/dist/core/{BlockNoise-DhKyd_F7.js → BlockNoise-BfDNfyBP.js} +5 -5
  13. package/dist/core/{BlueNoise-Auhzq4x5.js → BlueNoise-CNLIGPMW.js} +4 -4
  14. package/dist/core/{Blur-CcxMqYsu.js → Blur-B8NcZJdr.js} +3 -3
  15. package/dist/core/{Boids-D51U46GF.js → Boids-D51ZdvH0.js} +5 -5
  16. package/dist/core/{BokehBlur-Cfaqbh3I.js → BokehBlur-DO4V8nZ-.js} +4 -4
  17. package/dist/core/{BrickPattern-tASwilX0.js → BrickPattern-D21Nqxcj.js} +3 -3
  18. package/dist/core/{BrightnessContrast-ZCKqJW7i.js → BrightnessContrast-QxVeVMih.js} +1 -1
  19. package/dist/core/{BrushedMetal-B6gSVB28.js → BrushedMetal-Xq4jMVz1.js} +142 -35
  20. package/dist/core/{Bulge-dCYtWP4S.js → Bulge-CdCqTfrp.js} +2 -2
  21. package/dist/core/{CRTScreen-CVY1lOGL.js → CRTScreen-D7WSk5fJ.js} +1 -1
  22. package/dist/core/{CarbonFiber-Do9EONKv.js → CarbonFiber-Dg-XleHg.js} +141 -34
  23. package/dist/core/{Chalkboard-0hyyGnYl.js → Chalkboard-B_YRavSR.js} +2 -2
  24. package/dist/core/{ChannelBlur-DcZKCKXi.js → ChannelBlur-BmEILWdn.js} +2 -2
  25. package/dist/core/{CheckerWipe-BIE62tJ1.js → CheckerWipe-Dbt7TTDK.js} +2 -2
  26. package/dist/core/{Checkerboard-CRnfu63u.js → Checkerboard-BnWdSZLM.js} +2 -2
  27. package/dist/core/{Chevron-Ld_v4z9T.js → Chevron-DsJK3THV.js} +3 -3
  28. package/dist/core/{ChromaFlow-CTWeauIr.js → ChromaFlow-Bj4rfeWl.js} +2 -2
  29. package/dist/core/{ChromaticAberration-CxuOb68m.js → ChromaticAberration-C2UtSgN3.js} +2 -2
  30. package/dist/core/Chrome-CSrC5yk_.js +3692 -0
  31. package/dist/core/{Circle-XP1B5rsN.js → Circle-CJ4IbgBH.js} +3 -3
  32. package/dist/core/{ColorWheel-CFU_OmOW.js → ColorWheel-C_YLOL93.js} +3 -3
  33. package/dist/core/{CompressionArtifacts-Bc9xTdQP.js → CompressionArtifacts-BXto-pLr.js} +2 -2
  34. package/dist/core/{ConcentricSpin-DTJytpAk.js → ConcentricSpin-1tArUXYX.js} +3 -3
  35. package/dist/core/{ConicGradient-C-4uDmQj.js → ConicGradient-Tw-pg593.js} +3 -3
  36. package/dist/core/{ContourLines-C8p6f-1y.js → ContourLines-CBFm0hjl.js} +2 -2
  37. package/dist/core/{CornerPin-CB92kX10.js → CornerPin-BNgPHIHY.js} +2 -2
  38. package/dist/core/{Crescent-Dk4nlG8T.js → Crescent-BKcpTzwd.js} +3 -3
  39. package/dist/core/{Cross-DsnI1U8g.js → Cross-CDUSIOgx.js} +3 -3
  40. package/dist/core/{Crystal-CR_sG2y7.js → Crystal-DN2WgBrm.js} +6 -6
  41. package/dist/core/{CurlNoise-DJ27ih0F.js → CurlNoise-RsATuC8w.js} +5 -5
  42. package/dist/core/{CursorRipples-CuO3sZga.js → CursorRipples-DbtJtDDl.js} +3 -3
  43. package/dist/core/{CursorTrail-d4xx4QpM.js → CursorTrail-yoPFtwk9.js} +4 -4
  44. package/dist/core/{DataMosh-BhvE-2yC.js → DataMosh-DabFQ-B5.js} +2 -2
  45. package/dist/core/{DiamondGradient-CtOVKrYf.js → DiamondGradient-DbaUt2tC.js} +3 -3
  46. package/dist/core/{DiamondWipe-D-yiQBVj.js → DiamondWipe-Jth0vS7V.js} +2 -2
  47. package/dist/core/{DiffuseBlur-BDf-Czxz.js → DiffuseBlur-BZxj-iAt.js} +2 -2
  48. package/dist/core/{DisplacementMap-B_jf_2lj.js → DisplacementMap-31H7QPQl.js} +2 -2
  49. package/dist/core/{Dither-D3P6EJU8.js → Dither-BN-zSZ0l.js} +2 -2
  50. package/dist/core/{DotGrid-BnSVhJlh.js → DotGrid-BRDFAkBz.js} +3 -3
  51. package/dist/core/{DropShadow-BSKVH3n3.js → DropShadow-_lFvglPh.js} +2 -2
  52. package/dist/core/{Duotone-DfjYuK2u.js → Duotone-BhxXqh0S.js} +2 -2
  53. package/dist/core/{Ellipse-D7_1QKaa.js → Ellipse-NdZQjjl7.js} +3 -3
  54. package/dist/core/{Emboss-ZiPslqzl.js → Emboss--yOZdnyf.js} +5 -5
  55. package/dist/core/{Engraving-DsfkKajz.js → Engraving-B26NgnCE.js} +3 -3
  56. package/dist/core/{ErosionNoise-SELArv9H.js → ErosionNoise-_uC5Hx2q.js} +4 -4
  57. package/dist/core/{Exposure-A7WlTOti.js → Exposure-BM3eE3ol.js} +1 -1
  58. package/dist/core/{FallingLines-9PRMb_Ou.js → FallingLines-BuczyepF.js} +3 -3
  59. package/dist/core/{FilmGrain-SXzVDesw.js → FilmGrain-Dyy76ena.js} +1 -1
  60. package/dist/core/{FilmStock-RK4fk4m0.js → FilmStock-mi-H3Ul9.js} +3 -3
  61. package/dist/core/{Flip-DjoNWG4v.js → Flip-rZzkYscj.js} +2 -2
  62. package/dist/core/{FloatingParticles-D7vUF5g7.js → FloatingParticles-BbbTJldX.js} +5 -5
  63. package/dist/core/{FlowField-tHrXhd1b.js → FlowField-u0qYoqV2.js} +4 -4
  64. package/dist/core/{Flower-BfehbmmG.js → Flower--rN6c2HY.js} +3 -3
  65. package/dist/core/{FlowingGradient-BTKjkx5F.js → FlowingGradient-_zyM9KQn.js} +98 -13
  66. package/dist/core/{FlutedGlass-uFT7iy_9.js → FlutedGlass-C9-K6UQ7.js} +3 -3
  67. package/dist/core/{Fog-Cu1CMATa.js → Fog-2iNe3zZl.js} +3 -3
  68. package/dist/core/{Form3D-D0ji-MeC.js → Form3D-Dmvpcqp1.js} +3 -3
  69. package/dist/core/{FractalNoise-D9HYiOdr.js → FractalNoise-C8uudMNt.js} +5 -5
  70. package/dist/core/{Frost-DQZZxdTk.js → Frost-DV2zJSAL.js} +7 -7
  71. package/dist/core/{GaborNoise-D7BP0K4g.js → GaborNoise-Bty1hWmn.js} +5 -5
  72. package/dist/core/{Glass-CzCVnGn-.js → Glass-CYmFGP1b.js} +6 -6
  73. package/dist/core/{GlassTiles-DJzPPqwz.js → GlassTiles-B3vyGos-.js} +1 -1
  74. package/dist/core/{Glitch-D1Dx8__X.js → Glitch-DcjdwJep.js} +1 -1
  75. package/dist/core/{Glow-Bd9_o_Kv.js → Glow-D_nSsYo1.js} +3 -3
  76. package/dist/core/{Godrays-DRPRWGPm.js → Godrays-lPn_O_W-.js} +3 -3
  77. package/dist/core/{Goo-28A_pNBg.js → Goo-DxEB8kMF.js} +6 -6
  78. package/dist/core/{GradientMap-D8dv-1AX.js → GradientMap-7G6EOwy8.js} +2 -2
  79. package/dist/core/{Grayscale-BlVXBVwW.js → Grayscale-BJz0olll.js} +1 -1
  80. package/dist/core/{Grid-D9vlHvs1.js → Grid-D8ewrixy.js} +2 -2
  81. package/dist/core/{GridDistortion-BpqDvqj6.js → GridDistortion-CSBRousF.js} +3 -3
  82. package/dist/core/{Group-bwQnJRec.js → Group-BSg6a8Ro.js} +1 -1
  83. package/dist/core/{HTMLInCanvas-gCf64ozE.js → HTMLInCanvas-DnQ0ZY38.js} +1 -1
  84. package/dist/core/{Halftone-B_WouxiP.js → Halftone-B2C55h6_.js} +2 -2
  85. package/dist/core/{Heart-Bmt2TLNz.js → Heart-0eDZ50ZK.js} +3 -3
  86. package/dist/core/{Heatmap-Ruef741_.js → Heatmap-BdExXQBU.js} +7 -7
  87. package/dist/core/{HexGrid-By9k0YuI.js → HexGrid-B6UygS6q.js} +2 -2
  88. package/dist/core/{Hologram-Cf25ONOE.js → Hologram-D_eqqb8P.js} +7 -7
  89. package/dist/core/{Holographic-C9RzYykt.js → Holographic-Ctrsya3k.js} +7 -7
  90. package/dist/core/{HueShift-V3gQVuIo.js → HueShift-CFXxhPpm.js} +1 -1
  91. package/dist/core/{ImageTexture-DAUR2N5Q.js → ImageTexture-B5oPuXeI.js} +3 -3
  92. package/dist/core/{InkFlow-DlP1gmr4.js → InkFlow-C7l_qlaJ.js} +3 -3
  93. package/dist/core/{Invert-K648khvD.js → Invert-Bya7lBpK.js} +1 -1
  94. package/dist/core/{IrisWipe-Clkd_5CA.js → IrisWipe-Dg9iiTjF.js} +2 -2
  95. package/dist/core/{IsometricCubes-CzfAwpQ5.js → IsometricCubes-CC-l8cnR.js} +2 -2
  96. package/dist/core/{Kaleidoscope-B9k6HkNn.js → Kaleidoscope-DhvQTJdp.js} +2 -2
  97. package/dist/core/{KeyFrames-DX6JFhsy.js → KeyFrames-ZTsc7rtN.js} +3 -3
  98. package/dist/core/{LensDistortion-DG4VHEXV.js → LensDistortion-KiZJXFKC.js} +2 -2
  99. package/dist/core/{LensFlare-DO5lm--6.js → LensFlare-D5fr8RPA.js} +3 -3
  100. package/dist/core/{LightEdge-CxWsQwpZ.js → LightEdge-D0NOWDh7.js} +7 -7
  101. package/dist/core/{LightLeak-tGJW6l2_.js → LightLeak-DdaidQ1D.js} +4 -4
  102. package/dist/core/Line-B5DIIWBz.js +1428 -0
  103. package/dist/core/{LinearBlur-OmZcUden.js → LinearBlur-CyQxSLS2.js} +2 -2
  104. package/dist/core/{LinearGradient-DDqFujWC.js → LinearGradient-B8tyawJy.js} +3 -3
  105. package/dist/core/{LinearWipe-BzthBFNb.js → LinearWipe-D5UkI1cK.js} +2 -2
  106. package/dist/core/{LiquidMetal-DpRAJ5Ne.js → LiquidMetal-vARkyRL2.js} +230 -41
  107. package/dist/core/{Liquify-BVzmuY6D.js → Liquify-Djnk6ryT.js} +3 -3
  108. package/dist/core/{MagneticFilings-BP1KyU2C.js → MagneticFilings-BfTe8-Jn.js} +5 -5
  109. package/dist/core/{Marble-abj97ioG.js → Marble-3s7VS-tT.js} +4 -4
  110. package/dist/core/{Mirror-BYqbXWUj.js → Mirror-Ck4Hzdd8.js} +2 -2
  111. package/dist/core/{MultiPointGradient-DZZSkiDv.js → MultiPointGradient-CdzqMTN9.js} +2 -2
  112. package/dist/core/{Neon-DD8qY6H9.js → Neon-B8iSfL5s.js} +5 -5
  113. package/dist/core/{NoiseDissolve-DSkh5NdD.js → NoiseDissolve-Df70NgHI.js} +3 -3
  114. package/dist/core/{ObjectTracker-DvQF31-0.js → ObjectTracker-CFpotAyg.js} +3 -3
  115. package/dist/core/{PagePeel-DWtgqWdt.js → PagePeel-Bmc4hBhO.js} +1 -1
  116. package/dist/core/{Paper-DGzZsv79.js → Paper-af7JgKOt.js} +2 -2
  117. package/dist/core/{Parallelogram-Ce0Pg7DX.js → Parallelogram-D7bW1gMV.js} +3 -3
  118. package/dist/core/{ParticleField-CgCOigET.js → ParticleField-FPUBkJmo.js} +4 -4
  119. package/dist/core/{ParticleFlow-CRQhvYQx.js → ParticleFlow-DfdDvN-j.js} +5 -5
  120. package/dist/core/{Particles-fKk9qTkl.js → Particles-DZaTzOZP.js} +7 -7
  121. package/dist/core/{PerlinNoise-DIFK1BpN.js → PerlinNoise-DPaPG55C.js} +5 -5
  122. package/dist/core/{Perspective-CDNz_7y5.js → Perspective-DBzb7DC9.js} +2 -2
  123. package/dist/core/{PixelSort-sgh5ghCc.js → PixelSort-sqoLBmqR.js} +2 -2
  124. package/dist/core/{PixelThrow-CXtB4Am2.js → PixelThrow-arRYRlCO.js} +2 -2
  125. package/dist/core/{Pixelate-BSOzwVHo.js → Pixelate-Ba_iNPwv.js} +1 -1
  126. package/dist/core/{Plasma-G6Hl__3L.js → Plasma-zC1y0At6.js} +4 -4
  127. package/dist/core/{Plastic-B6F2WeaX.js → Plastic-C-NBXCG-.js} +7 -7
  128. package/dist/core/{PolarCoordinates-Bi99omfI.js → PolarCoordinates-CjV_EFpN.js} +2 -2
  129. package/dist/core/{Polygon-BFxoe-Fg.js → Polygon-0kVtkdec.js} +3 -3
  130. package/dist/core/{Posterize-DxiCXLUL.js → Posterize-BUt2MAqY.js} +1 -1
  131. package/dist/core/{Prism-D6J-acZf.js → Prism-BBSdqnRm.js} +3 -3
  132. package/dist/core/{ProgressiveBlur-Bko6UMxQ.js → ProgressiveBlur-CQhyaOwl.js} +4 -4
  133. package/dist/core/{RadialGradient-B_Dgxs9_.js → RadialGradient-BXLBHnCC.js} +3 -3
  134. package/dist/core/{RadialWipe-U9n5aeiJ.js → RadialWipe-DfJ3dL7p.js} +2 -2
  135. package/dist/core/{RandomBars-U_zpGDJh.js → RandomBars-B-EaAz9c.js} +3 -3
  136. package/dist/core/{ReactionDiffusion-I9xj-iK_.js → ReactionDiffusion-r1qHYWoB.js} +3 -3
  137. package/dist/core/{RectangularCoordinates-DX6wutjX.js → RectangularCoordinates-CFGiELUv.js} +2 -2
  138. package/dist/core/{ReflectivePlane-DU9pf-7H.js → ReflectivePlane-BbKUjtUs.js} +4 -4
  139. package/dist/core/{Repeater-kCIaHHFy.js → Repeater-DZhhgwMr.js} +2 -2
  140. package/dist/core/{Ring-B_tYq3KV.js → Ring-DFxV0XzX.js} +3 -3
  141. package/dist/core/{RippleWipe-DCgZZ4VT.js → RippleWipe-DFh-8SmT.js} +2 -2
  142. package/dist/core/{Ripples-BDhMh7XC.js → Ripples-BG24IcNH.js} +3 -3
  143. package/dist/core/{RoundedRect-9b3REf2d.js → RoundedRect-B2EDoIqT.js} +3 -3
  144. package/dist/core/{Saturation-CcblT031.js → Saturation-DKbtxVNf.js} +1 -1
  145. package/dist/core/{Scratches-Rzk27V6D.js → Scratches-C40D6A1_.js} +5 -5
  146. package/dist/core/{Sharpness-ClLOnNR8.js → Sharpness-DygCiVsY.js} +1 -1
  147. package/dist/core/{Shatter-CLI896c7.js → Shatter-eVP3Mt9W.js} +3 -3
  148. package/dist/core/{SimplexNoise-98RPhPzU.js → SimplexNoise-HorjLzId.js} +5 -5
  149. package/dist/core/{SineWave-BZPrTdYD.js → SineWave-CTIhqhO-.js} +3 -3
  150. package/dist/core/{SliceWipe-BR5Qr38C.js → SliceWipe-D3yX3CAm.js} +1 -1
  151. package/dist/core/{Smoke-DoW6Brlo.js → Smoke-CFr-A3JD.js} +4 -4
  152. package/dist/core/{SmokeFill-CXHhKX8u.js → SmokeFill-DglhxF4x.js} +6 -6
  153. package/dist/core/{SmokeFlow-mRJ_JcnZ.js → SmokeFlow-CC1tfLRh.js} +4 -4
  154. package/dist/core/{Solarize-BNCG4TCa.js → Solarize-wvgIpPSb.js} +1 -1
  155. package/dist/core/{SolidColor-dYxjV0YF.js → SolidColor-CQ9bQ-k6.js} +1 -1
  156. package/dist/core/{Spherize-6d5WZIZV.js → Spherize-N33ACzeM.js} +2 -2
  157. package/dist/core/{Spiral-IOZ-Zm0_.js → Spiral-NeLWfZ6k.js} +3 -3
  158. package/dist/core/{Star-D9txpy4P.js → Star-DqkPHXlP.js} +3 -3
  159. package/dist/core/{Stone-H2qLOvGJ.js → Stone-mVzuC5SK.js} +2 -2
  160. package/dist/core/{Strands-Db6_uJAi.js → Strands-C19HsqO_.js} +3 -3
  161. package/dist/core/{Stretch-BIFeD7-1.js → Stretch-CAGlZjVf.js} +2 -2
  162. package/dist/core/{Stripes-5YZhE4bc.js → Stripes-DH9wZV3F.js} +3 -3
  163. package/dist/core/{StudioBackground-B16ICQTt.js → StudioBackground-DPsj_N10.js} +352 -403
  164. package/dist/core/{SunBurst-DSUFLqjC.js → SunBurst-D5p0QAnh.js} +3 -3
  165. package/dist/core/{Surface3D-BoliMAeJ.js → Surface3D-HSAAGomd.js} +4 -4
  166. package/dist/core/{Swirl-CozBN2cj.js → Swirl-C1lH2gAk.js} +3 -3
  167. package/dist/core/{Teardrop-D8uqqHu8.js → Teardrop-b8XQR6NO.js} +3 -3
  168. package/dist/core/{Text-Dka9dwCa.js → Text-DPjLa6Eh.js} +3 -3
  169. package/dist/core/{ThinFilm-d7IlUY62.js → ThinFilm-DhpK-SoR.js} +5 -5
  170. package/dist/core/{TiltShift-CNc1M7bT.js → TiltShift-e57KIilk.js} +4 -4
  171. package/dist/core/{TimeTrail-BFuqrI-l.js → TimeTrail-CYofyeeE.js} +3 -3
  172. package/dist/core/{Tint-BzCm1m93.js → Tint-DBM82OkZ.js} +2 -2
  173. package/dist/core/{Trapezoid-Dc6dpnCU.js → Trapezoid-DaIBhsop.js} +3 -3
  174. package/dist/core/{TriangularGrid-BMemTQ8X.js → TriangularGrid-CBOVJOcR.js} +3 -3
  175. package/dist/core/{Tritone-XnyfjYXL.js → Tritone-D6Dur2eo.js} +2 -2
  176. package/dist/core/{Truchet-DUbAZPvr.js → Truchet-sunCQd_E.js} +2 -2
  177. package/dist/core/{Twirl-Dj6ZOh7V.js → Twirl-D3-3HSuS.js} +2 -2
  178. package/dist/core/{VHS-DcN38Sa-.js → VHS-DtyeGxi8.js} +1 -1
  179. package/dist/core/{VenetianBlinds-Dsix9S6Y.js → VenetianBlinds-H8OVGxhT.js} +2 -2
  180. package/dist/core/{Vesica-BvLPrNBY.js → Vesica-C8MrL_up.js} +3 -3
  181. package/dist/core/{Vibrance-B3F1IOJC.js → Vibrance-B8gBhQS7.js} +1 -1
  182. package/dist/core/{VideoTexture-rZnbkY1j.js → VideoTexture--U8aiyP1.js} +2 -2
  183. package/dist/core/{Vignette-D747S9Un.js → Vignette-yIXlpfCE.js} +2 -2
  184. package/dist/core/{Voronoi-tdjJp1Yz.js → Voronoi-BW4RE3MQ.js} +3 -3
  185. package/dist/core/{Water-wnYFmeVF.js → Water-uLbQQrt-.js} +7 -7
  186. package/dist/core/{Watercolor-DlrWTnkX.js → Watercolor-CcZ0fVEu.js} +3 -3
  187. package/dist/core/{WaveDistortion-11QwOfVR.js → WaveDistortion-DasSsVxv.js} +3 -3
  188. package/dist/core/{WaveletNoise-DWOzHG3M.js → WaveletNoise-DpRWc5Qw.js} +5 -5
  189. package/dist/core/{Weave-CdGwj7cZ.js → Weave-CLGYIcmf.js} +2 -2
  190. package/dist/core/{WebcamTexture-CihYSbzd.js → WebcamTexture--GTVU-Bm.js} +3 -3
  191. package/dist/core/{Wool-DKCBMabi.js → Wool-uy61uieK.js} +2 -2
  192. package/dist/core/{WorleyNoise-BjD32UOl.js → WorleyNoise-i7i0azT8.js} +3 -3
  193. package/dist/core/{ZoomBlur-BnRTijPn.js → ZoomBlur-OQP2jw3F.js} +2 -2
  194. package/dist/core/{agents-c-JjGH1b.js → agents-BVhq_Z2T.js} +1 -1
  195. package/dist/core/bevel-BGAb1fb2.js +121 -0
  196. package/dist/core/{blur-DKmdsW6d.js → blur-cLcFzL4x.js} +3 -3
  197. package/dist/core/{compute-BoeIXi0l.js → compute-Ax-p6Ubc.js} +1 -1
  198. package/dist/core/{edges-BZUKQxSE.js → edges-B7Yet3LV.js} +10 -10
  199. package/dist/core/{glass-BVqgjSPg.js → glass-CNFJB2On.js} +8 -8
  200. package/dist/core/gpu/composer.d.ts +1 -0
  201. package/dist/core/gpu/composer.d.ts.map +1 -1
  202. package/dist/core/gpu/kit/blur.d.ts +7 -7
  203. package/dist/core/gpu/kit/blur.d.ts.map +1 -1
  204. package/dist/core/gpu/kit/effects/bevel.d.ts +5 -0
  205. package/dist/core/gpu/kit/effects/bevel.d.ts.map +1 -0
  206. package/dist/core/gpu/kit/effects/glass.d.ts.map +1 -1
  207. package/dist/core/gpu/kit/effects/index.d.ts +1 -0
  208. package/dist/core/gpu/kit/effects/index.d.ts.map +1 -1
  209. package/dist/core/gpu/porters.d.ts +1 -1
  210. package/dist/core/gpu/porters.d.ts.map +1 -1
  211. package/dist/core/index.js +210 -207
  212. package/dist/core/{media-Ds6MRfGR.js → media-Y-WxQcQD.js} +1 -1
  213. package/dist/core/{noise-Cq0KUOSC.js → noise-B-PI7JUx.js} +1 -1
  214. package/dist/core/{noiseColor-CQyzqpVZ.js → noiseColor-BQAO-Rjk.js} +2 -2
  215. package/dist/core/{noiseColor-DjCUZ_8u.js → noiseColor-Cgx-FS2o.js} +2 -2
  216. package/dist/core/{noiseStylize-fKVcJbGK.js → noiseStylize-BN5zji1E.js} +2 -2
  217. package/dist/core/{porters-DogLzpKT.js → porters-D_xmIPz2.js} +2 -2
  218. package/dist/core/registry.js +210 -207
  219. package/dist/core/{sdf-o99ONcMJ.js → sdf-B8rPE1PG.js} +1 -1
  220. package/dist/core/shaderRegistry-DFRVhoj2.js +431 -0
  221. package/dist/core/shaderRegistry.d.ts.map +1 -1
  222. package/dist/core/shaders/AngularBlur/index.js +5 -5
  223. package/dist/core/shaders/Arc/index.js +6 -6
  224. package/dist/core/shaders/Ascii/index.js +5 -5
  225. package/dist/core/shaders/Aurora/index.js +6 -6
  226. package/dist/core/shaders/BarShift/index.js +5 -5
  227. package/dist/core/shaders/BarnDoors/index.js +5 -5
  228. package/dist/core/shaders/Beam/index.js +5 -5
  229. package/dist/core/shaders/Bend/index.js +5 -5
  230. package/dist/core/shaders/Blob/index.js +5 -5
  231. package/dist/core/shaders/BlockDissolve/index.js +6 -6
  232. package/dist/core/shaders/BlockNoise/index.js +8 -8
  233. package/dist/core/shaders/BlueNoise/index.js +8 -8
  234. package/dist/core/shaders/Blur/index.js +6 -6
  235. package/dist/core/shaders/Boids/index.js +7 -7
  236. package/dist/core/shaders/BokehBlur/index.js +6 -6
  237. package/dist/core/shaders/BrickPattern/index.js +5 -5
  238. package/dist/core/shaders/BrightnessContrast/index.js +5 -5
  239. package/dist/core/shaders/BrushedMetal/index.d.ts +13 -1
  240. package/dist/core/shaders/BrushedMetal/index.d.ts.map +1 -1
  241. package/dist/core/shaders/BrushedMetal/index.js +10 -9
  242. package/dist/core/shaders/Bulge/index.js +5 -5
  243. package/dist/core/shaders/CRTScreen/index.js +5 -5
  244. package/dist/core/shaders/CarbonFiber/index.d.ts +13 -1
  245. package/dist/core/shaders/CarbonFiber/index.d.ts.map +1 -1
  246. package/dist/core/shaders/CarbonFiber/index.js +10 -9
  247. package/dist/core/shaders/Chalkboard/index.js +5 -5
  248. package/dist/core/shaders/ChannelBlur/index.js +6 -6
  249. package/dist/core/shaders/CheckerWipe/index.js +5 -5
  250. package/dist/core/shaders/Checkerboard/index.js +5 -5
  251. package/dist/core/shaders/Chevron/index.js +5 -5
  252. package/dist/core/shaders/ChromaFlow/index.js +5 -5
  253. package/dist/core/shaders/ChromaticAberration/index.js +5 -5
  254. package/dist/core/shaders/Chrome/index.d.ts +152 -0
  255. package/dist/core/shaders/Chrome/index.d.ts.map +1 -0
  256. package/dist/core/shaders/Chrome/index.js +14 -0
  257. package/dist/core/shaders/Circle/index.js +6 -6
  258. package/dist/core/shaders/ColorWheel/index.js +5 -5
  259. package/dist/core/shaders/CompressionArtifacts/index.js +5 -5
  260. package/dist/core/shaders/ConcentricSpin/index.js +5 -5
  261. package/dist/core/shaders/ConicGradient/index.js +5 -5
  262. package/dist/core/shaders/ContourLines/index.js +5 -5
  263. package/dist/core/shaders/CornerPin/index.js +5 -5
  264. package/dist/core/shaders/Crescent/index.js +6 -6
  265. package/dist/core/shaders/Cross/index.js +6 -6
  266. package/dist/core/shaders/Crystal/index.js +9 -9
  267. package/dist/core/shaders/CurlNoise/index.js +8 -8
  268. package/dist/core/shaders/CursorRipples/index.js +5 -5
  269. package/dist/core/shaders/CursorTrail/index.js +5 -5
  270. package/dist/core/shaders/DataMosh/index.js +5 -5
  271. package/dist/core/shaders/DiamondGradient/index.js +5 -5
  272. package/dist/core/shaders/DiamondWipe/index.js +5 -5
  273. package/dist/core/shaders/DiffuseBlur/index.js +5 -5
  274. package/dist/core/shaders/DisplacementMap/index.js +5 -5
  275. package/dist/core/shaders/Dither/index.js +5 -5
  276. package/dist/core/shaders/DotGrid/index.js +5 -5
  277. package/dist/core/shaders/DropShadow/index.js +5 -5
  278. package/dist/core/shaders/Duotone/index.js +5 -5
  279. package/dist/core/shaders/Ellipse/index.js +6 -6
  280. package/dist/core/shaders/Emboss/index.js +8 -8
  281. package/dist/core/shaders/Engraving/index.js +6 -6
  282. package/dist/core/shaders/ErosionNoise/index.js +8 -8
  283. package/dist/core/shaders/Exposure/index.js +5 -5
  284. package/dist/core/shaders/FallingLines/index.js +5 -5
  285. package/dist/core/shaders/FilmGrain/index.js +5 -5
  286. package/dist/core/shaders/FilmStock/index.js +6 -6
  287. package/dist/core/shaders/Flip/index.js +5 -5
  288. package/dist/core/shaders/FloatingParticles/index.js +7 -7
  289. package/dist/core/shaders/FlowField/index.js +6 -6
  290. package/dist/core/shaders/Flower/index.js +6 -6
  291. package/dist/core/shaders/FlowingGradient/index.d.ts.map +1 -1
  292. package/dist/core/shaders/FlowingGradient/index.js +6 -6
  293. package/dist/core/shaders/FlutedGlass/index.js +5 -5
  294. package/dist/core/shaders/Fog/index.js +5 -5
  295. package/dist/core/shaders/Form3D/index.js +5 -5
  296. package/dist/core/shaders/FractalNoise/index.js +7 -7
  297. package/dist/core/shaders/Frost/index.js +9 -9
  298. package/dist/core/shaders/GaborNoise/index.js +8 -8
  299. package/dist/core/shaders/Glass/index.js +9 -9
  300. package/dist/core/shaders/GlassTiles/index.js +5 -5
  301. package/dist/core/shaders/Glitch/index.js +5 -5
  302. package/dist/core/shaders/Glow/index.js +6 -6
  303. package/dist/core/shaders/Godrays/index.js +5 -5
  304. package/dist/core/shaders/Goo/index.js +8 -8
  305. package/dist/core/shaders/GradientMap/index.js +5 -5
  306. package/dist/core/shaders/Grayscale/index.js +5 -5
  307. package/dist/core/shaders/Grid/index.js +5 -5
  308. package/dist/core/shaders/GridDistortion/index.js +5 -5
  309. package/dist/core/shaders/Group/index.js +5 -5
  310. package/dist/core/shaders/HTMLInCanvas/index.js +5 -5
  311. package/dist/core/shaders/Halftone/index.js +5 -5
  312. package/dist/core/shaders/Heart/index.js +6 -6
  313. package/dist/core/shaders/Heatmap/index.js +9 -9
  314. package/dist/core/shaders/HexGrid/index.js +5 -5
  315. package/dist/core/shaders/Hologram/index.js +9 -9
  316. package/dist/core/shaders/Holographic/index.js +9 -9
  317. package/dist/core/shaders/HueShift/index.js +5 -5
  318. package/dist/core/shaders/ImageTexture/index.js +7 -7
  319. package/dist/core/shaders/InkFlow/index.js +5 -5
  320. package/dist/core/shaders/Invert/index.js +5 -5
  321. package/dist/core/shaders/IrisWipe/index.js +5 -5
  322. package/dist/core/shaders/IsometricCubes/index.js +5 -5
  323. package/dist/core/shaders/Kaleidoscope/index.js +5 -5
  324. package/dist/core/shaders/KeyFrames/index.js +5 -5
  325. package/dist/core/shaders/LensDistortion/index.js +5 -5
  326. package/dist/core/shaders/LensFlare/index.js +5 -5
  327. package/dist/core/shaders/LightEdge/index.js +9 -9
  328. package/dist/core/shaders/LightLeak/index.js +6 -6
  329. package/dist/core/shaders/Line/index.d.ts +72 -0
  330. package/dist/core/shaders/Line/index.d.ts.map +1 -0
  331. package/dist/core/shaders/Line/index.js +7 -0
  332. package/dist/core/shaders/LinearBlur/index.js +5 -5
  333. package/dist/core/shaders/LinearGradient/index.js +5 -5
  334. package/dist/core/shaders/LinearWipe/index.js +5 -5
  335. package/dist/core/shaders/LiquidMetal/index.d.ts +13 -1
  336. package/dist/core/shaders/LiquidMetal/index.d.ts.map +1 -1
  337. package/dist/core/shaders/LiquidMetal/index.js +10 -9
  338. package/dist/core/shaders/Liquify/index.js +5 -5
  339. package/dist/core/shaders/MagneticFilings/index.js +7 -7
  340. package/dist/core/shaders/Marble/index.js +6 -6
  341. package/dist/core/shaders/Mirror/index.js +5 -5
  342. package/dist/core/shaders/MultiPointGradient/index.js +5 -5
  343. package/dist/core/shaders/Neon/index.js +7 -7
  344. package/dist/core/shaders/NoiseDissolve/index.js +6 -6
  345. package/dist/core/shaders/ObjectTracker/index.js +6 -6
  346. package/dist/core/shaders/PagePeel/index.js +5 -5
  347. package/dist/core/shaders/Paper/index.js +6 -6
  348. package/dist/core/shaders/Parallelogram/index.js +6 -6
  349. package/dist/core/shaders/ParticleField/index.js +7 -7
  350. package/dist/core/shaders/ParticleFlow/index.js +7 -7
  351. package/dist/core/shaders/Particles/index.js +9 -9
  352. package/dist/core/shaders/PerlinNoise/index.js +8 -8
  353. package/dist/core/shaders/Perspective/index.js +5 -5
  354. package/dist/core/shaders/PixelSort/index.js +5 -5
  355. package/dist/core/shaders/PixelThrow/index.js +5 -5
  356. package/dist/core/shaders/Pixelate/index.js +5 -5
  357. package/dist/core/shaders/Plasma/index.js +6 -6
  358. package/dist/core/shaders/Plastic/index.js +9 -9
  359. package/dist/core/shaders/PolarCoordinates/index.js +5 -5
  360. package/dist/core/shaders/Polygon/index.js +6 -6
  361. package/dist/core/shaders/Posterize/index.js +5 -5
  362. package/dist/core/shaders/Prism/index.js +5 -5
  363. package/dist/core/shaders/ProgressiveBlur/index.js +6 -6
  364. package/dist/core/shaders/RadialGradient/index.js +5 -5
  365. package/dist/core/shaders/RadialWipe/index.js +5 -5
  366. package/dist/core/shaders/RandomBars/index.js +6 -6
  367. package/dist/core/shaders/ReactionDiffusion/index.js +5 -5
  368. package/dist/core/shaders/RectangularCoordinates/index.js +5 -5
  369. package/dist/core/shaders/ReflectivePlane/index.js +6 -6
  370. package/dist/core/shaders/Repeater/index.js +5 -5
  371. package/dist/core/shaders/Ring/index.js +6 -6
  372. package/dist/core/shaders/RippleWipe/index.js +5 -5
  373. package/dist/core/shaders/Ripples/index.js +5 -5
  374. package/dist/core/shaders/RoundedRect/index.js +6 -6
  375. package/dist/core/shaders/Saturation/index.js +5 -5
  376. package/dist/core/shaders/Scratches/index.js +8 -8
  377. package/dist/core/shaders/Sharpness/index.js +5 -5
  378. package/dist/core/shaders/Shatter/index.js +5 -5
  379. package/dist/core/shaders/SimplexNoise/index.js +7 -7
  380. package/dist/core/shaders/SineWave/index.js +5 -5
  381. package/dist/core/shaders/SliceWipe/index.js +5 -5
  382. package/dist/core/shaders/Smoke/index.js +5 -5
  383. package/dist/core/shaders/SmokeFill/index.js +8 -8
  384. package/dist/core/shaders/SmokeFlow/index.js +5 -5
  385. package/dist/core/shaders/Solarize/index.js +5 -5
  386. package/dist/core/shaders/SolidColor/index.js +2 -2
  387. package/dist/core/shaders/Spherize/index.js +5 -5
  388. package/dist/core/shaders/Spiral/index.js +5 -5
  389. package/dist/core/shaders/Star/index.js +6 -6
  390. package/dist/core/shaders/Stone/index.js +4 -4
  391. package/dist/core/shaders/Strands/index.js +5 -5
  392. package/dist/core/shaders/Stretch/index.js +5 -5
  393. package/dist/core/shaders/Stripes/index.js +5 -5
  394. package/dist/core/shaders/StudioBackground/index.d.ts +1 -1
  395. package/dist/core/shaders/StudioBackground/index.d.ts.map +1 -1
  396. package/dist/core/shaders/StudioBackground/index.js +5 -5
  397. package/dist/core/shaders/SunBurst/index.js +5 -5
  398. package/dist/core/shaders/Surface3D/index.js +6 -6
  399. package/dist/core/shaders/Swirl/index.js +5 -5
  400. package/dist/core/shaders/Teardrop/index.js +6 -6
  401. package/dist/core/shaders/Text/index.js +6 -6
  402. package/dist/core/shaders/ThinFilm/index.js +7 -7
  403. package/dist/core/shaders/TiltShift/index.js +6 -6
  404. package/dist/core/shaders/TimeTrail/index.js +5 -5
  405. package/dist/core/shaders/Tint/index.js +5 -5
  406. package/dist/core/shaders/Trapezoid/index.js +6 -6
  407. package/dist/core/shaders/TriangularGrid/index.js +5 -5
  408. package/dist/core/shaders/Tritone/index.js +5 -5
  409. package/dist/core/shaders/Truchet/index.js +5 -5
  410. package/dist/core/shaders/Twirl/index.js +5 -5
  411. package/dist/core/shaders/VHS/index.js +5 -5
  412. package/dist/core/shaders/VenetianBlinds/index.js +5 -5
  413. package/dist/core/shaders/Vesica/index.js +6 -6
  414. package/dist/core/shaders/Vibrance/index.js +5 -5
  415. package/dist/core/shaders/VideoTexture/index.js +6 -6
  416. package/dist/core/shaders/Vignette/index.js +5 -5
  417. package/dist/core/shaders/Voronoi/index.js +5 -5
  418. package/dist/core/shaders/Water/index.js +9 -9
  419. package/dist/core/shaders/Watercolor/index.js +6 -6
  420. package/dist/core/shaders/WaveDistortion/index.js +5 -5
  421. package/dist/core/shaders/WaveletNoise/index.js +8 -8
  422. package/dist/core/shaders/Weave/index.js +5 -5
  423. package/dist/core/shaders/WebcamTexture/index.js +7 -7
  424. package/dist/core/shaders/Wool/index.js +4 -4
  425. package/dist/core/shaders/WorleyNoise/index.js +5 -5
  426. package/dist/core/shaders/ZoomBlur/index.js +5 -5
  427. package/dist/core/{shapeEffectBounds-Dg4GQ5vW.js → shapeEffectBounds-Svfd_R5a.js} +13 -9
  428. package/dist/core/utilities/shapeEffectBounds.d.ts.map +1 -1
  429. package/dist/core/utilities/transformations/index.js +1 -1
  430. package/dist/js/bundle.js +166 -166
  431. package/dist/js/createShader.js +1 -1
  432. package/dist/js/utils/generatePresetCode.d.ts.map +1 -1
  433. package/dist/js/utils/generatePresetCode.js +54 -0
  434. package/dist/react/Chrome.js +226 -0
  435. package/dist/react/Line.js +226 -0
  436. package/dist/react/Preview.js +2 -0
  437. package/dist/react/Shader.js +1 -1
  438. package/dist/react/bundle.js +153 -153
  439. package/dist/react/components/BrushedMetal.d.ts +3 -1
  440. package/dist/react/components/BrushedMetal.d.ts.map +1 -1
  441. package/dist/react/components/CarbonFiber.d.ts +3 -1
  442. package/dist/react/components/CarbonFiber.d.ts.map +1 -1
  443. package/dist/react/components/Chrome.d.ts +46 -0
  444. package/dist/react/components/Chrome.d.ts.map +1 -0
  445. package/dist/react/components/Line.d.ts +40 -0
  446. package/dist/react/components/Line.d.ts.map +1 -0
  447. package/dist/react/components/LiquidMetal.d.ts +3 -1
  448. package/dist/react/components/LiquidMetal.d.ts.map +1 -1
  449. package/dist/react/engine/Preview.d.ts.map +1 -1
  450. package/dist/react/index.d.ts +2 -0
  451. package/dist/react/index.d.ts.map +1 -1
  452. package/dist/react/index.js +3 -1
  453. package/dist/react/utils/generatePresetCode.d.ts.map +1 -1
  454. package/dist/react/utils/generatePresetCode.js +54 -0
  455. package/dist/registry.js +1179 -2
  456. package/dist/solid/components/BrushedMetal.d.ts +3 -1
  457. package/dist/solid/components/BrushedMetal.d.ts.map +1 -1
  458. package/dist/solid/components/CarbonFiber.d.ts +3 -1
  459. package/dist/solid/components/CarbonFiber.d.ts.map +1 -1
  460. package/dist/solid/components/Chrome.d.ts +43 -0
  461. package/dist/solid/components/Chrome.d.ts.map +1 -0
  462. package/dist/solid/components/Chrome.js +232 -0
  463. package/dist/solid/components/Line.d.ts +37 -0
  464. package/dist/solid/components/Line.d.ts.map +1 -0
  465. package/dist/solid/components/Line.js +232 -0
  466. package/dist/solid/components/LiquidMetal.d.ts +3 -1
  467. package/dist/solid/components/LiquidMetal.d.ts.map +1 -1
  468. package/dist/solid/engine/Preview.d.ts.map +1 -1
  469. package/dist/solid/engine/Preview.js +203 -199
  470. package/dist/solid/engine/Shader.js +1 -1
  471. package/dist/solid/index.d.ts +2 -0
  472. package/dist/solid/index.d.ts.map +1 -1
  473. package/dist/solid/index.js +333 -329
  474. package/dist/solid/utils/generatePresetCode.d.ts.map +1 -1
  475. package/dist/solid/utils/generatePresetCode.js +54 -0
  476. package/dist/svelte/components/BrushedMetal.svelte.d.ts +2 -0
  477. package/dist/svelte/components/CarbonFiber.svelte.d.ts +2 -0
  478. package/dist/svelte/components/Chrome.svelte.d.ts +33 -0
  479. package/dist/svelte/components/Line.svelte.d.ts +27 -0
  480. package/dist/svelte/components/LiquidMetal.svelte.d.ts +2 -0
  481. package/dist/svelte/index.d.ts +2 -0
  482. package/dist/svelte/index.js +2313 -1899
  483. package/dist/svelte/source/components/BrushedMetal.svelte +2 -0
  484. package/dist/svelte/source/components/CarbonFiber.svelte +2 -0
  485. package/dist/svelte/source/components/Chrome.svelte +357 -0
  486. package/dist/svelte/source/components/Line.svelte +351 -0
  487. package/dist/svelte/source/components/LiquidMetal.svelte +2 -0
  488. package/dist/svelte/source/engine/Preview.svelte +4 -0
  489. package/dist/svelte/source/index.js +2 -0
  490. package/dist/svelte/utils/generatePresetCode.js +54 -0
  491. package/dist/vue/BrushedMetal.vue_vue_type_script_setup_true_lang.js +2 -0
  492. package/dist/vue/CarbonFiber.vue_vue_type_script_setup_true_lang.js +2 -0
  493. package/dist/vue/Chrome.js +3 -0
  494. package/dist/vue/Chrome.vue_vue_type_script_setup_true_lang.js +247 -0
  495. package/dist/vue/Line.js +3 -0
  496. package/dist/vue/Line.vue_vue_type_script_setup_true_lang.js +234 -0
  497. package/dist/vue/LiquidMetal.vue_vue_type_script_setup_true_lang.js +2 -0
  498. package/dist/vue/Preview.vue_vue_type_script_setup_true_lang.js +4 -0
  499. package/dist/vue/Shader.vue_vue_type_script_setup_true_lang.js +1 -1
  500. package/dist/vue/components/BrushedMetal.vue.d.ts +2 -0
  501. package/dist/vue/components/BrushedMetal.vue.d.ts.map +1 -1
  502. package/dist/vue/components/CarbonFiber.vue.d.ts +2 -0
  503. package/dist/vue/components/CarbonFiber.vue.d.ts.map +1 -1
  504. package/dist/vue/components/Chrome.vue.d.ts +68 -0
  505. package/dist/vue/components/Chrome.vue.d.ts.map +1 -0
  506. package/dist/vue/components/Line.vue.d.ts +62 -0
  507. package/dist/vue/components/Line.vue.d.ts.map +1 -0
  508. package/dist/vue/components/LiquidMetal.vue.d.ts +2 -0
  509. package/dist/vue/components/LiquidMetal.vue.d.ts.map +1 -1
  510. package/dist/vue/index.d.ts +2 -0
  511. package/dist/vue/index.d.ts.map +1 -1
  512. package/dist/vue/index.js +3 -1
  513. package/dist/vue/utils/generatePresetCode.d.ts.map +1 -1
  514. package/dist/vue/utils/generatePresetCode.js +54 -0
  515. package/package.json +17 -1
  516. package/dist/core/shaderRegistry-CkDrffEe.js +0 -427
  517. /package/dist/core/{fonts-DFuXI3Hk.js → fonts-DxVn9e-I.js} +0 -0
  518. /package/dist/core/{naturalSize-B679wTgN.js → naturalSize-BPCi_I-Z.js} +0 -0
  519. /package/dist/core/{transformations-CsPUHppB.js → transformations-C7gn_5rF.js} +0 -0
@@ -0,0 +1,351 @@
1
+ <script lang="ts">
2
+ import { getContext, setContext, onMount, onDestroy } from 'svelte';
3
+ import {
4
+ createGpuUniformsMap,
5
+ resolveBoundingBox,
6
+ type GpuUniformsMap,
7
+ type BlendMode,
8
+ type NodeMetadata,
9
+ type PropConfig,
10
+ type MaskConfig,
11
+ type PropDriver,
12
+ type TransformConfig,
13
+ type BoundingBoxConfig,
14
+ type LayoutConfig
15
+ } from '../../../core/index.js';
16
+ import {setColorSpaceMode} from '../../../core/utilities/transformations/index.js';
17
+
18
+ // @ts-ignore - this import is replaced at build time
19
+ import { componentDefinition, type ComponentProps } from '../../../core/shaders/Line/index.js';
20
+
21
+ // Warn once per page load if this is an experimental component
22
+ let _experimentalWarnedOnce = false;
23
+ if ((componentDefinition as any).experimental && !_experimentalWarnedOnce) {
24
+ _experimentalWarnedOnce = true;
25
+ const _e = (componentDefinition as any).experimental;
26
+ console.info(`%c⚠ [Shaders] ${componentDefinition.name} is experimental: ${_e.message}`, 'color: #f59e0b; font-weight: bold');
27
+ }
28
+
29
+ /**
30
+ * Define component props including blend mode, opacity, visibility, masking, and transformation
31
+ */
32
+ interface ExtendedComponentProps extends Partial<ComponentProps> {
33
+ pointA?: ComponentProps['pointA'] | PropDriver;
34
+ pointB?: ComponentProps['pointB'] | PropDriver;
35
+ thickness?: ComponentProps['thickness'] | PropDriver;
36
+ dashLength?: ComponentProps['dashLength'] | PropDriver;
37
+ gapLength?: ComponentProps['gapLength'] | PropDriver;
38
+ blendMode?: BlendMode;
39
+ opacity?: number;
40
+ visible?: boolean;
41
+ id?: string;
42
+ maskSource?: string;
43
+ maskType?: string;
44
+ renderOrder?: number;
45
+ transform?: Partial<TransformConfig>;
46
+ boundingBox?: Partial<BoundingBoxConfig>;
47
+ flow?: LayoutConfig;
48
+ absolute?: boolean;
49
+ children?: import('svelte').Snippet;
50
+ }
51
+
52
+ function isPropDriver(value: unknown): value is PropDriver {
53
+ return typeof value === 'object' && value !== null && 'type' in value &&
54
+ ((value as any).type === 'map' || (value as any).type === 'mouse' || (value as any).type === 'mouse-position' || (value as any).type === 'auto-animate');
55
+ }
56
+
57
+ /**
58
+ * Default transform configuration (optimized for zero overhead)
59
+ */
60
+ const DEFAULT_TRANSFORM: TransformConfig = {
61
+ offsetX: 0,
62
+ offsetY: 0,
63
+ rotation: 0,
64
+ scale: 1,
65
+ anchorX: 0.5,
66
+ anchorY: 0.5,
67
+ edges: 'transparent'
68
+ };
69
+
70
+ // Define the component props and their default values from the shader definition
71
+ const componentDefaults = {
72
+ blendMode: 'normal' as BlendMode,
73
+ visible: true,
74
+ // opacity intentionally has no default - handled by renderer
75
+ // transform intentionally has no default - handled by effectiveTransform
76
+ ...Object.entries(componentDefinition.props).reduce(
77
+ (acc, [key, config]) => {
78
+ acc[key] = (config as unknown as PropConfig<typeof config>).default;
79
+ return acc;
80
+ },
81
+ {} as Record<string, any>
82
+ )
83
+ };
84
+
85
+ // Declare props using Svelte 5's syntax
86
+ const props: ExtendedComponentProps = $props();
87
+
88
+ // Apply defaults manually since Svelte 5 doesn't have withDefaults equivalent
89
+ // Use $derived so the metadata $effect re-runs when any of these change at runtime
90
+ const blendMode = $derived(props.blendMode ?? componentDefaults.blendMode);
91
+ const opacity = $derived(props.opacity); // No default - handled by renderer
92
+ const visible = $derived(props.visible ?? componentDefaults.visible); // Default to true
93
+ const id = $derived(props.id);
94
+ const maskSource = $derived(props.maskSource);
95
+ const maskType = $derived(props.maskType);
96
+ const renderOrder = $derived(props.renderOrder);
97
+ const { children } = props;
98
+
99
+ // Collect PropDriver values from shader props into the maps metadata structure
100
+ const mapsFromProps = $derived.by(() => {
101
+ const maps: Record<string, PropDriver> = {};
102
+ for (const key of Object.keys(componentDefinition.props)) {
103
+ const val = (props as any)[key];
104
+ if (isPropDriver(val)) maps[key] = val as PropDriver;
105
+ }
106
+ return Object.keys(maps).length > 0 ? maps : undefined;
107
+ });
108
+
109
+ /**
110
+ * Computed transform that merges user-provided values with defaults
111
+ */
112
+ const effectiveTransform = $derived({
113
+ ...DEFAULT_TRANSFORM,
114
+ ...props.transform
115
+ });
116
+
117
+ /**
118
+ * Effective bounding box — partial configs merge with full-frame defaults,
119
+ * absent stays undefined so the bbox render path is not activated
120
+ */
121
+ const effectiveBoundingBox = $derived(resolveBoundingBox(props.boundingBox));
122
+
123
+ /**
124
+ * FIRST: Get the parent ID from context BEFORE setting our own context
125
+ */
126
+ const parentId = getContext<string>('shaderParentId');
127
+ if (parentId === undefined) {
128
+ throw new Error('Shader components must be used inside an <Shader> component or another shader component');
129
+ }
130
+
131
+ /**
132
+ * Use the provided ID or generate a unique identifier for this component instance
133
+ */
134
+ const instanceId = (id ? id.replace(/[^a-zA-Z0-9_]/g, '_') : null) || Math.random().toString(36).substring(2, 10);
135
+
136
+ /**
137
+ * THEN: Provide our unique identifier to child components
138
+ */
139
+ setContext('shaderParentId', instanceId);
140
+
141
+ /**
142
+ * Creates a non-reactive object containing only props that differ from defaults
143
+ * This optimization prevents unnecessary GPU uniform updates for unchanged values
144
+ * Special props like blendMode and opacity are handled separately
145
+ */
146
+ const shaderReadyProps = $derived.by(() => {
147
+ let baseProps = { ...componentDefaults };
148
+
149
+ // Only include props that differ from defaults (excluding special props and PropDrivers)
150
+ for (const key in props) {
151
+ if (key !== 'blendMode' && key !== 'opacity' && key !== 'visible' &&
152
+ key !== 'id' && key !== 'maskSource' && key !== 'maskType' && key !== 'renderOrder' &&
153
+ key !== 'transform' && key !== 'boundingBox' && key !== 'flow' && key !== 'absolute' && key !== 'children') {
154
+ const propValue = (props as any)[key];
155
+ if (isPropDriver(propValue)) continue; // PropDrivers go to metadata.maps, not uniforms
156
+ const defaultValue = (componentDefaults as any)[key];
157
+ if (propValue !== undefined && propValue !== defaultValue) {
158
+ (baseProps as any)[key] = propValue;
159
+ }
160
+ }
161
+ }
162
+ return baseProps;
163
+ });
164
+
165
+ /**
166
+ * Get the color space from the root Shader component.
167
+ * Used to set the global color space mode before creating uniforms.
168
+ */
169
+ const shaderColorSpace = getContext<() => 'p3-linear' | 'srgb'>('shaderColorSpace');
170
+
171
+ /**
172
+ * Creates the GPU uniform values map using only the changed props
173
+ * Set the global color space mode before creating uniforms so colors are transformed correctly
174
+ * Note: Intentionally captures initial value - props are immutable after initialization
175
+ */
176
+ if (shaderColorSpace) {
177
+ setColorSpaceMode(shaderColorSpace());
178
+ }
179
+ // svelte-ignore state_referenced_locally
180
+ const uniforms: GpuUniformsMap = createGpuUniformsMap(componentDefinition, shaderReadyProps, instanceId);
181
+
182
+ /**
183
+ * Get the node registration function from parent context
184
+ */
185
+ const parentRegister = getContext<(id: string, fragmentNodeFunc: any, parentId: string | null, metadata: NodeMetadata | null, uniforms: GpuUniformsMap | null, componentDefinition: any, domCanvas?: HTMLCanvasElement) => void>('shaderNodeRegister');
186
+ if (parentRegister === undefined) {
187
+ throw new Error('Shader components must be used inside an <Shader> component or another shader component');
188
+ }
189
+
190
+ /**
191
+ * Get the uniform update function from parent context
192
+ */
193
+ const parentUniformUpdate = getContext<(nodeId: string, uniformName: string, value: any) => void>('shaderUniformUpdate');
194
+ if (parentUniformUpdate === undefined) {
195
+ throw new Error('Shader components require shaderUniformUpdate from parent');
196
+ }
197
+
198
+ /**
199
+ * Get the metadata update function from parent context
200
+ */
201
+ const parentMetadataUpdate = getContext<(nodeId: string, metadata: NodeMetadata) => void>('shaderMetadataUpdate');
202
+ if (parentMetadataUpdate === undefined) {
203
+ throw new Error('Shader components require shaderMetadataUpdate from parent');
204
+ }
205
+
206
+ // capturesDOM — canvas layoutsubtree portal for HTMLInCanvas-style shaders
207
+ const isCapturesDOM = !!(componentDefinition as any).capturesDOM;
208
+ let captureCanvas: HTMLCanvasElement | undefined;
209
+ let captureW = $state(typeof window !== 'undefined' ? Math.round(window.innerWidth * Math.min(window.devicePixelRatio, 2)) : 0);
210
+ let captureH = $state(typeof window !== 'undefined' ? Math.round(window.innerHeight * Math.min(window.devicePixelRatio, 2)) : 0);
211
+
212
+ function teleportToBody(node: HTMLElement) {
213
+ document.body.appendChild(node);
214
+ return { destroy() { node.remove(); } };
215
+ }
216
+
217
+ if (isCapturesDOM) {
218
+ const onWinResize = () => {
219
+ const d = Math.min(window.devicePixelRatio, 2);
220
+ captureW = Math.round(window.innerWidth * d);
221
+ captureH = Math.round(window.innerHeight * d);
222
+ };
223
+ onMount(() => { window.addEventListener('resize', onWinResize); });
224
+ onDestroy(() => { window.removeEventListener('resize', onWinResize); });
225
+ }
226
+
227
+ // DOM marker ref for determining render order from template position
228
+ let orderMarker: HTMLSpanElement;
229
+
230
+ // Stores the DOM-detected render order
231
+ let detectedRenderOrder: number | undefined = undefined;
232
+
233
+ // Flag to track when component is registered
234
+ let isRegistered = $state(false);
235
+
236
+ // Setup uniform watchers with registration guard
237
+ Object.entries(uniforms).forEach(([propName, entry]) => {
238
+ $effect(() => {
239
+ // Only run after component is registered
240
+ if (!isRegistered) return;
241
+
242
+ // GPU bridge entries carry `.value` (no v1 `.uniform` node). colorStops expands into
243
+ // extra array fields (colorsArray/…) that aren't component props — their `props[name]`
244
+ // is always undefined, so the guard below skips them.
245
+ if (entry && entry.value !== undefined) {
246
+ const newValue = (props as any)[propName];
247
+ if (newValue !== undefined && !isPropDriver(newValue)) {
248
+ // Send raw value - renderer will handle transformation
249
+ // PropDriver values go to metadata.maps, not uniforms
250
+ parentUniformUpdate(instanceId, propName, newValue);
251
+ }
252
+ }
253
+ });
254
+ });
255
+
256
+ // Watch blend mode, opacity, visibility, masking, transformations, and prop maps changes
257
+ $effect(() => {
258
+ // Only run after component is registered
259
+ if (!isRegistered) return;
260
+
261
+ const metadata: NodeMetadata = {
262
+ blendMode,
263
+ opacity,
264
+ visible: visible === false ? false : true,
265
+ id,
266
+ mask: maskSource ? {
267
+ source: maskSource,
268
+ type: (maskType || 'alpha') as MaskConfig['type']
269
+ } : undefined,
270
+ maps: mapsFromProps,
271
+ renderOrder: renderOrder ?? detectedRenderOrder,
272
+ transform: effectiveTransform,
273
+ boundingBox: effectiveBoundingBox,
274
+ flow: props.flow,
275
+ absolute: props.absolute
276
+ };
277
+ parentMetadataUpdate(instanceId, metadata);
278
+ });
279
+
280
+ // Register this component after mount to ensure parent is ready
281
+ onMount(() => {
282
+ // Register this component with safety check
283
+ if (componentDefinition && typeof componentDefinition.fragment === 'function') {
284
+ parentRegister(
285
+ instanceId,
286
+ componentDefinition.fragment,
287
+ parentId,
288
+ {
289
+ blendMode,
290
+ opacity,
291
+ visible: visible !== false ? true : false,
292
+ id,
293
+ mask: maskSource ? {
294
+ source: maskSource,
295
+ type: (maskType || 'alpha') as MaskConfig['type']
296
+ } as MaskConfig : undefined,
297
+ maps: mapsFromProps,
298
+ renderOrder: renderOrder ?? detectedRenderOrder,
299
+ transform: effectiveTransform,
300
+ boundingBox: effectiveBoundingBox,
301
+ flow: props.flow,
302
+ absolute: props.absolute
303
+ },
304
+ uniforms,
305
+ componentDefinition,
306
+ isCapturesDOM ? captureCanvas : undefined
307
+ );
308
+
309
+ // Set flag to enable effects after successful registration
310
+ isRegistered = true;
311
+
312
+ // Detect DOM position for correct render ordering
313
+ if (renderOrder === undefined && orderMarker) {
314
+ const parent = orderMarker.parentElement;
315
+ if (parent) {
316
+ const siblings = parent.querySelectorAll(':scope > [data-shader-id]');
317
+ const position = Array.from(siblings).indexOf(orderMarker);
318
+ if (position >= 0) {
319
+ detectedRenderOrder = position;
320
+ parentMetadataUpdate(instanceId, { renderOrder: position } as NodeMetadata);
321
+ }
322
+ }
323
+ }
324
+ } else {
325
+ console.error('componentDefinition.fragment is not a function:', {
326
+ componentDefinition,
327
+ fragment: componentDefinition?.fragment,
328
+ type: typeof componentDefinition?.fragment
329
+ });
330
+ }
331
+ });
332
+
333
+ // Clean up node from registry when component is unmounted
334
+ onDestroy(() => {
335
+ isRegistered = false;
336
+ parentRegister(instanceId, null, null, null, null);
337
+ });
338
+ </script>
339
+
340
+ <span bind:this={orderMarker} style="display:contents" data-shader-id={instanceId}>
341
+ {#if !isCapturesDOM}
342
+ {@render children?.()}
343
+ {/if}
344
+ </span>
345
+ {#if isCapturesDOM}
346
+ <canvas use:teleportToBody bind:this={captureCanvas} layoutsubtree
347
+ width={captureW} height={captureH}
348
+ style="position:fixed;inset:0;width:100vw;height:100vh;z-index:-9999">
349
+ {@render children?.()}
350
+ </canvas>
351
+ {/if}
@@ -31,6 +31,8 @@
31
31
  */
32
32
  interface ExtendedComponentProps extends Partial<ComponentProps> {
33
33
  center?: ComponentProps['center'] | PropDriver;
34
+ bevelWidth?: ComponentProps['bevelWidth'] | PropDriver;
35
+ bevelShape?: ComponentProps['bevelShape'] | PropDriver;
34
36
  blendMode?: BlendMode;
35
37
  opacity?: number;
36
38
  visible?: boolean;
@@ -33,6 +33,7 @@ import Checkerboard from '../components/Checkerboard.svelte'
33
33
  import Chevron from '../components/Chevron.svelte'
34
34
  import ChromaFlow from '../components/ChromaFlow.svelte'
35
35
  import ChromaticAberration from '../components/ChromaticAberration.svelte'
36
+ import Chrome from '../components/Chrome.svelte'
36
37
  import Circle from '../components/Circle.svelte'
37
38
  import ColorWheel from '../components/ColorWheel.svelte'
38
39
  import CompressionArtifacts from '../components/CompressionArtifacts.svelte'
@@ -104,6 +105,7 @@ import LensDistortion from '../components/LensDistortion.svelte'
104
105
  import LensFlare from '../components/LensFlare.svelte'
105
106
  import LightEdge from '../components/LightEdge.svelte'
106
107
  import LightLeak from '../components/LightLeak.svelte'
108
+ import Line from '../components/Line.svelte'
107
109
  import LinearBlur from '../components/LinearBlur.svelte'
108
110
  import LinearGradient from '../components/LinearGradient.svelte'
109
111
  import LinearWipe from '../components/LinearWipe.svelte'
@@ -227,6 +229,7 @@ const componentMap: Record<string, any> = {
227
229
  Chevron,
228
230
  ChromaFlow,
229
231
  ChromaticAberration,
232
+ Chrome,
230
233
  Circle,
231
234
  ColorWheel,
232
235
  CompressionArtifacts,
@@ -299,6 +302,7 @@ const componentMap: Record<string, any> = {
299
302
  LensFlare,
300
303
  LightEdge,
301
304
  LightLeak,
305
+ Line,
302
306
  LinearBlur,
303
307
  LinearGradient,
304
308
  LinearWipe,
@@ -26,6 +26,7 @@ export { default as Checkerboard } from './components/Checkerboard.svelte';
26
26
  export { default as Chevron } from './components/Chevron.svelte';
27
27
  export { default as ChromaFlow } from './components/ChromaFlow.svelte';
28
28
  export { default as ChromaticAberration } from './components/ChromaticAberration.svelte';
29
+ export { default as Chrome } from './components/Chrome.svelte';
29
30
  export { default as Circle } from './components/Circle.svelte';
30
31
  export { default as ColorWheel } from './components/ColorWheel.svelte';
31
32
  export { default as CompressionArtifacts } from './components/CompressionArtifacts.svelte';
@@ -99,6 +100,7 @@ export { default as LensDistortion } from './components/LensDistortion.svelte';
99
100
  export { default as LensFlare } from './components/LensFlare.svelte';
100
101
  export { default as LightEdge } from './components/LightEdge.svelte';
101
102
  export { default as LightLeak } from './components/LightLeak.svelte';
103
+ export { default as Line } from './components/Line.svelte';
102
104
  export { default as LinearBlur } from './components/LinearBlur.svelte';
103
105
  export { default as LinearGradient } from './components/LinearGradient.svelte';
104
106
  export { default as LinearWipe } from './components/LinearWipe.svelte';
@@ -266,6 +266,8 @@ var shaderMetadata = {
266
266
  "envRotation": 0,
267
267
  "lightAngle": 215,
268
268
  "speed": .4,
269
+ "bevelWidth": .05,
270
+ "bevelShape": 0,
269
271
  "edgeSoftness": .05,
270
272
  "shape": "{\"type\":\"circleSDF\",\"radius\":0.35}"
271
273
  },
@@ -303,6 +305,8 @@ var shaderMetadata = {
303
305
  "environment": 2,
304
306
  "envRotation": 0,
305
307
  "lightAngle": 215,
308
+ "bevelWidth": .05,
309
+ "bevelShape": 0,
306
310
  "edgeSoftness": .05,
307
311
  "shape": "{\"type\":\"circleSDF\",\"radius\":0.35}"
308
312
  },
@@ -375,6 +379,33 @@ var shaderMetadata = {
375
379
  "greenOffset": 0,
376
380
  "blueOffset": 1
377
381
  },
382
+ "Chrome": {
383
+ "opacity": 1,
384
+ "blendMode": "normal",
385
+ "origin": "center",
386
+ "center": {
387
+ "x": .5,
388
+ "y": .5
389
+ },
390
+ "scale": 1,
391
+ "rotation": 0,
392
+ "tint": "#ffffff",
393
+ "warmColor": "#ffa94d",
394
+ "coolColor": "#82a7e6",
395
+ "bevelWidth": .028,
396
+ "bevelShape": .55,
397
+ "curvature": .5,
398
+ "waviness": .15,
399
+ "environment": 1,
400
+ "envRotation": 0,
401
+ "softness": .3,
402
+ "spectral": .9,
403
+ "dispersion": .3,
404
+ "shadows": .7,
405
+ "speed": .5,
406
+ "edgeSoftness": .05,
407
+ "shape": "{\"type\":\"roundedRectSDF\",\"width\":0.42,\"height\":0.3,\"rounding\":0.12}"
408
+ },
378
409
  "Circle": {
379
410
  "opacity": 1,
380
411
  "blendMode": "normal",
@@ -1412,6 +1443,25 @@ var shaderMetadata = {
1412
1443
  "speed": 1,
1413
1444
  "seed": 0
1414
1445
  },
1446
+ "Line": {
1447
+ "opacity": 1,
1448
+ "blendMode": "normal",
1449
+ "color": "#ffffff",
1450
+ "pointA": {
1451
+ "x": .2,
1452
+ "y": .5
1453
+ },
1454
+ "pointB": {
1455
+ "x": .8,
1456
+ "y": .5
1457
+ },
1458
+ "thickness": .01,
1459
+ "style": "solid",
1460
+ "dashLength": .05,
1461
+ "gapLength": .025,
1462
+ "capStart": "rounded",
1463
+ "capEnd": "rounded"
1464
+ },
1415
1465
  "LinearBlur": {
1416
1466
  "opacity": 1,
1417
1467
  "blendMode": "normal",
@@ -1465,6 +1515,8 @@ var shaderMetadata = {
1465
1515
  "sharpness": .6,
1466
1516
  "dispersion": .25,
1467
1517
  "lightAngle": 265,
1518
+ "bevelWidth": .05,
1519
+ "bevelShape": 0,
1468
1520
  "edgeSoftness": .05,
1469
1521
  "shape": "{\"type\":\"circleSDF\",\"radius\":0.35}"
1470
1522
  },
@@ -2942,6 +2994,7 @@ const availableComponents = [
2942
2994
  "Chevron",
2943
2995
  "ChromaFlow",
2944
2996
  "ChromaticAberration",
2997
+ "Chrome",
2945
2998
  "Circle",
2946
2999
  "ColorWheel",
2947
3000
  "CompressionArtifacts",
@@ -3013,6 +3066,7 @@ const availableComponents = [
3013
3066
  "LensFlare",
3014
3067
  "LightEdge",
3015
3068
  "LightLeak",
3069
+ "Line",
3016
3070
  "LinearBlur",
3017
3071
  "LinearGradient",
3018
3072
  "LinearWipe",
@@ -8,6 +8,8 @@ var BrushedMetal_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ d
8
8
  __name: "BrushedMetal",
9
9
  props: /* @__PURE__ */ mergeDefaults({
10
10
  center: {},
11
+ bevelWidth: {},
12
+ bevelShape: {},
11
13
  blendMode: {},
12
14
  opacity: {},
13
15
  visible: { type: Boolean },
@@ -8,6 +8,8 @@ var CarbonFiber_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ de
8
8
  __name: "CarbonFiber",
9
9
  props: /* @__PURE__ */ mergeDefaults({
10
10
  center: {},
11
+ bevelWidth: {},
12
+ bevelShape: {},
11
13
  blendMode: {},
12
14
  opacity: {},
13
15
  visible: { type: Boolean },
@@ -0,0 +1,3 @@
1
+ import Chrome_vue_vue_type_script_setup_true_lang_default from "./Chrome.vue_vue_type_script_setup_true_lang.js";
2
+ var Chrome_default = Chrome_vue_vue_type_script_setup_true_lang_default;
3
+ export { Chrome_default as default };