shaders 2.5.81 → 2.5.82

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 (187) hide show
  1. package/dist/core/FlowingGradient-DVproCI1.js +145 -0
  2. package/dist/core/{VideoTexture-DDnc6aVv.js → VideoTexture-Dbsbgb1Y.js} +1 -1
  3. package/dist/core/{WebcamTexture-rb0dLKSc.js → WebcamTexture-xvb8MuFz.js} +1 -1
  4. package/dist/core/index.js +77 -61
  5. package/dist/core/registry.js +62 -61
  6. package/dist/core/renderer.d.ts +1 -0
  7. package/dist/core/renderer.d.ts.map +1 -1
  8. package/dist/core/shaderRegistry-C0Tmid5z.js +220 -0
  9. package/dist/core/shaderRegistry.d.ts.map +1 -1
  10. package/dist/core/shaders/FlowingGradient/index.d.ts +62 -0
  11. package/dist/core/shaders/FlowingGradient/index.d.ts.map +1 -0
  12. package/dist/core/shaders/FlowingGradient/index.js +5 -0
  13. package/dist/core/shaders/Form3D/index.js +1 -1
  14. package/dist/core/shaders/Glass/index.js +1 -1
  15. package/dist/core/shaders/GlassTiles/index.js +1 -1
  16. package/dist/core/shaders/Glitch/index.js +1 -1
  17. package/dist/core/shaders/Glow/index.js +1 -1
  18. package/dist/core/shaders/Godrays/index.js +1 -1
  19. package/dist/core/shaders/Grayscale/index.js +1 -1
  20. package/dist/core/shaders/Grid/index.js +1 -1
  21. package/dist/core/shaders/GridDistortion/index.js +1 -1
  22. package/dist/core/shaders/Group/index.js +1 -1
  23. package/dist/core/shaders/Halftone/index.js +1 -1
  24. package/dist/core/shaders/HueShift/index.js +1 -1
  25. package/dist/core/shaders/ImageTexture/index.js +1 -1
  26. package/dist/core/shaders/Invert/index.js +1 -1
  27. package/dist/core/shaders/Kaleidoscope/index.js +1 -1
  28. package/dist/core/shaders/LensFlare/index.js +1 -1
  29. package/dist/core/shaders/LinearBlur/index.js +1 -1
  30. package/dist/core/shaders/LinearGradient/index.js +1 -1
  31. package/dist/core/shaders/Liquify/index.js +1 -1
  32. package/dist/core/shaders/Mirror/index.js +1 -1
  33. package/dist/core/shaders/Neon/index.js +1 -1
  34. package/dist/core/shaders/Paper/index.js +1 -1
  35. package/dist/core/shaders/Perspective/index.js +1 -1
  36. package/dist/core/shaders/Pixelate/index.js +1 -1
  37. package/dist/core/shaders/Plasma/index.js +1 -1
  38. package/dist/core/shaders/PolarCoordinates/index.js +1 -1
  39. package/dist/core/shaders/Polygon/index.js +1 -1
  40. package/dist/core/shaders/Posterize/index.js +1 -1
  41. package/dist/core/shaders/ProgressiveBlur/index.js +1 -1
  42. package/dist/core/shaders/RadialGradient/index.js +1 -1
  43. package/dist/core/shaders/RectangularCoordinates/index.js +1 -1
  44. package/dist/core/shaders/Ring/index.js +1 -1
  45. package/dist/core/shaders/Ripples/index.js +1 -1
  46. package/dist/core/shaders/RoundedRect/index.js +1 -1
  47. package/dist/core/shaders/Saturation/index.js +1 -1
  48. package/dist/core/shaders/Sharpness/index.js +1 -1
  49. package/dist/core/shaders/Shatter/index.js +1 -1
  50. package/dist/core/shaders/SimplexNoise/index.js +1 -1
  51. package/dist/core/shaders/SineWave/index.js +1 -1
  52. package/dist/core/shaders/SolidColor/index.js +1 -1
  53. package/dist/core/shaders/Spherize/index.js +1 -1
  54. package/dist/core/shaders/Spiral/index.js +1 -1
  55. package/dist/core/shaders/Star/index.js +1 -1
  56. package/dist/core/shaders/Strands/index.js +1 -1
  57. package/dist/core/shaders/Stretch/index.js +1 -1
  58. package/dist/core/shaders/Stripes/index.js +1 -1
  59. package/dist/core/shaders/StudioBackground/index.js +1 -1
  60. package/dist/core/shaders/Swirl/index.js +1 -1
  61. package/dist/core/shaders/TiltShift/index.js +1 -1
  62. package/dist/core/shaders/Tint/index.js +1 -1
  63. package/dist/core/shaders/Trapezoid/index.js +1 -1
  64. package/dist/core/shaders/Tritone/index.js +1 -1
  65. package/dist/core/shaders/Twirl/index.js +1 -1
  66. package/dist/core/shaders/Vesica/index.js +1 -1
  67. package/dist/core/shaders/Vibrance/index.js +1 -1
  68. package/dist/core/shaders/VideoTexture/index.js +2 -2
  69. package/dist/core/shaders/WaveDistortion/index.js +1 -1
  70. package/dist/core/shaders/WebcamTexture/index.js +2 -2
  71. package/dist/core/shaders/ZoomBlur/index.js +1 -1
  72. package/dist/js/createShader.d.ts.map +1 -1
  73. package/dist/js/createShader.js +2 -1
  74. package/dist/js/types.d.ts +1 -0
  75. package/dist/js/types.d.ts.map +1 -1
  76. package/dist/js/utils/generatePresetCode.d.ts.map +1 -1
  77. package/dist/js/utils/generatePresetCode.js +13 -0
  78. package/dist/react/FlowingGradient.js +180 -0
  79. package/dist/react/Preview.js +1 -0
  80. package/dist/react/Shader.js +10 -2
  81. package/dist/react/components/FlowingGradient.d.ts +34 -0
  82. package/dist/react/components/FlowingGradient.d.ts.map +1 -0
  83. package/dist/react/engine/Preview.d.ts.map +1 -1
  84. package/dist/react/engine/Shader.d.ts +1 -0
  85. package/dist/react/engine/Shader.d.ts.map +1 -1
  86. package/dist/react/index.d.ts +1 -0
  87. package/dist/react/index.d.ts.map +1 -1
  88. package/dist/react/index.js +2 -1
  89. package/dist/react/utils/generatePresetCode.d.ts.map +1 -1
  90. package/dist/react/utils/generatePresetCode.js +13 -0
  91. package/dist/registry.js +242 -0
  92. package/dist/solid/components/FlowingGradient.d.ts +31 -0
  93. package/dist/solid/components/FlowingGradient.d.ts.map +1 -0
  94. package/dist/solid/components/FlowingGradient.js +183 -0
  95. package/dist/solid/engine/Preview.d.ts.map +1 -1
  96. package/dist/solid/engine/Preview.js +64 -62
  97. package/dist/solid/engine/Shader.d.ts +1 -0
  98. package/dist/solid/engine/Shader.d.ts.map +1 -1
  99. package/dist/solid/engine/Shader.js +6 -2
  100. package/dist/solid/index.d.ts +1 -0
  101. package/dist/solid/index.d.ts.map +1 -1
  102. package/dist/solid/index.js +124 -122
  103. package/dist/solid/utils/generatePresetCode.d.ts.map +1 -1
  104. package/dist/solid/utils/generatePresetCode.js +13 -0
  105. package/dist/svelte/components/FlowingGradient.svelte.d.ts +21 -0
  106. package/dist/svelte/engine/Shader.svelte.d.ts +1 -0
  107. package/dist/svelte/{generatePresetCode-6ecNqXs9.js → generatePresetCode-B9QYLcji.js} +13 -0
  108. package/dist/svelte/index.d.ts +1 -0
  109. package/dist/svelte/index.js +450 -301
  110. package/dist/svelte/source/components/FlowingGradient.svelte +288 -0
  111. package/dist/svelte/source/engine/Preview.svelte +2 -0
  112. package/dist/svelte/source/engine/Shader.svelte +3 -1
  113. package/dist/svelte/source/index.js +1 -0
  114. package/dist/svelte/utils/generatePresetCode.js +1 -1
  115. package/dist/vue/FlowingGradient.js +3 -0
  116. package/dist/vue/FlowingGradient.vue_vue_type_script_setup_true_lang.js +173 -0
  117. package/dist/vue/Preview.vue_vue_type_script_setup_true_lang.js +2 -0
  118. package/dist/vue/Shader.vue_vue_type_script_setup_true_lang.js +5 -2
  119. package/dist/vue/components/FlowingGradient.vue.d.ts +56 -0
  120. package/dist/vue/components/FlowingGradient.vue.d.ts.map +1 -0
  121. package/dist/vue/engine/Shader.vue.d.ts +6 -2
  122. package/dist/vue/engine/Shader.vue.d.ts.map +1 -1
  123. package/dist/vue/index.d.ts +1 -0
  124. package/dist/vue/index.d.ts.map +1 -1
  125. package/dist/vue/index.js +2 -1
  126. package/dist/vue/utils/generatePresetCode.d.ts.map +1 -1
  127. package/dist/vue/utils/generatePresetCode.js +13 -0
  128. package/package.json +9 -1
  129. package/dist/core/shaderRegistry-DnmRD6xy.js +0 -218
  130. /package/dist/core/{Form3D-D3MoN95S.js → Form3D-DhezVuyN.js} +0 -0
  131. /package/dist/core/{Glass-CRaFJ-8c.js → Glass-D7wAPADg.js} +0 -0
  132. /package/dist/core/{GlassTiles-C3PKMWgp.js → GlassTiles-ClrOIpCg.js} +0 -0
  133. /package/dist/core/{Glitch-MyIU0Bad.js → Glitch-DmWytiRl.js} +0 -0
  134. /package/dist/core/{Glow-1ee_R1fA.js → Glow-Dm4dfZ_m.js} +0 -0
  135. /package/dist/core/{Godrays-CvcPIegU.js → Godrays-CYILZUHg.js} +0 -0
  136. /package/dist/core/{Grayscale-8MPw9PHN.js → Grayscale-CPR_l4G2.js} +0 -0
  137. /package/dist/core/{Grid-D64zkkku.js → Grid-CCQZ3GhD.js} +0 -0
  138. /package/dist/core/{GridDistortion-B7PGORW3.js → GridDistortion-oGT8NaWa.js} +0 -0
  139. /package/dist/core/{Group-DoOcKuhW.js → Group-CC317vlL.js} +0 -0
  140. /package/dist/core/{Halftone-Co7P2SWy.js → Halftone-BZk1Hjz_.js} +0 -0
  141. /package/dist/core/{HueShift-Bvd9VTak.js → HueShift-CuE3YTBE.js} +0 -0
  142. /package/dist/core/{ImageTexture-BJ1udc62.js → ImageTexture-DWUSKXX0.js} +0 -0
  143. /package/dist/core/{Invert-5VR-fNRw.js → Invert-C9RiDYP_.js} +0 -0
  144. /package/dist/core/{Kaleidoscope-B0McCEhc.js → Kaleidoscope-DtVlQWKG.js} +0 -0
  145. /package/dist/core/{LensFlare-DXgpPyJK.js → LensFlare-AVpiDD1O.js} +0 -0
  146. /package/dist/core/{LinearBlur-CBl0B23J.js → LinearBlur-AR65FcZh.js} +0 -0
  147. /package/dist/core/{LinearGradient-C0FT7-Lc.js → LinearGradient-DXCXjS-K.js} +0 -0
  148. /package/dist/core/{Liquify-Cr-1qPxN.js → Liquify-mhzPd19o.js} +0 -0
  149. /package/dist/core/{Mirror-DfZBEOUf.js → Mirror-CSc5mJi1.js} +0 -0
  150. /package/dist/core/{Neon-E8whPM6C.js → Neon-By5OgQ24.js} +0 -0
  151. /package/dist/core/{Paper-DJwBbPxA.js → Paper-DfUka0dt.js} +0 -0
  152. /package/dist/core/{Perspective-BdHcCgqZ.js → Perspective-uPiPmWy_.js} +0 -0
  153. /package/dist/core/{Pixelate-B9x2E0k-.js → Pixelate-DRkAW4Lo.js} +0 -0
  154. /package/dist/core/{Plasma-CMXrHMJv.js → Plasma-ELzbK-Us.js} +0 -0
  155. /package/dist/core/{PolarCoordinates-tZbl0VOq.js → PolarCoordinates-CalS_TB6.js} +0 -0
  156. /package/dist/core/{Polygon-B4ab2iAo.js → Polygon-MN_gj5R6.js} +0 -0
  157. /package/dist/core/{Posterize-Big6cECo.js → Posterize-C4vtRmtA.js} +0 -0
  158. /package/dist/core/{ProgressiveBlur-D0ZlHOw4.js → ProgressiveBlur-CLYhfOvQ.js} +0 -0
  159. /package/dist/core/{RadialGradient-C1Uu5_bL.js → RadialGradient-DtD8HWdM.js} +0 -0
  160. /package/dist/core/{RectangularCoordinates-BB7_S4gH.js → RectangularCoordinates-B96mflF5.js} +0 -0
  161. /package/dist/core/{Ring-DVW66Ug0.js → Ring-76XLaaus.js} +0 -0
  162. /package/dist/core/{Ripples-DeRyNukC.js → Ripples-Cevf-Hvg.js} +0 -0
  163. /package/dist/core/{RoundedRect-B9y33WS5.js → RoundedRect-D6q6xf_O.js} +0 -0
  164. /package/dist/core/{Saturation-NrGhLp0a.js → Saturation-CcDwPh2v.js} +0 -0
  165. /package/dist/core/{Sharpness-DAC9Qnh0.js → Sharpness-D_dXfDEo.js} +0 -0
  166. /package/dist/core/{Shatter-ZIaXf4fs.js → Shatter-NfZzVt54.js} +0 -0
  167. /package/dist/core/{SimplexNoise-mSsE7oXX.js → SimplexNoise-aipzNV5j.js} +0 -0
  168. /package/dist/core/{SineWave-BAhTQVXp.js → SineWave-CVeYx3n-.js} +0 -0
  169. /package/dist/core/{SolidColor-BQnId3qy.js → SolidColor-BdbBnLxX.js} +0 -0
  170. /package/dist/core/{Spherize-YvHlKrZy.js → Spherize-BRGwLGeu.js} +0 -0
  171. /package/dist/core/{Spiral-DUDZyQjj.js → Spiral-BkTBXb7z.js} +0 -0
  172. /package/dist/core/{Star-DB4dmzyz.js → Star-DN6qziUO.js} +0 -0
  173. /package/dist/core/{Strands-CF49kt1s.js → Strands-Cjsw-cPu.js} +0 -0
  174. /package/dist/core/{Stretch-Dkhera5t.js → Stretch-9cta3Z1W.js} +0 -0
  175. /package/dist/core/{Stripes-BOROXiAH.js → Stripes-C0sCGCz_.js} +0 -0
  176. /package/dist/core/{StudioBackground-DNmf8LGj.js → StudioBackground-BYv_-8df.js} +0 -0
  177. /package/dist/core/{Swirl-C5RQIA6E.js → Swirl-DXjIXfy7.js} +0 -0
  178. /package/dist/core/{TiltShift-BgscLSg_.js → TiltShift-56lcZ4cJ.js} +0 -0
  179. /package/dist/core/{Tint-CvKUJTtg.js → Tint-8_WIy9_e.js} +0 -0
  180. /package/dist/core/{Trapezoid-Co8cWZTK.js → Trapezoid-C-HfI0fp.js} +0 -0
  181. /package/dist/core/{Tritone-Ss5m7yFO.js → Tritone-nyJyybHI.js} +0 -0
  182. /package/dist/core/{Twirl-CF_9ObSp.js → Twirl-BzSEz4xK.js} +0 -0
  183. /package/dist/core/{Vesica-C7tcbHbW.js → Vesica-DXWePxDj.js} +0 -0
  184. /package/dist/core/{Vibrance-DVWcESAa.js → Vibrance-BETLN3Ie.js} +0 -0
  185. /package/dist/core/{WaveDistortion-Caj3cQz7.js → WaveDistortion-C-j597Jm.js} +0 -0
  186. /package/dist/core/{ZoomBlur-DUrSxwl0.js → ZoomBlur-DFw0J9x3.js} +0 -0
  187. /package/dist/core/{browser-daS5XZwr.js → browser-CqdrcD5J.js} +0 -0
package/dist/registry.js CHANGED
@@ -6913,6 +6913,248 @@ export const shaderRegistry = [
6913
6913
  }
6914
6914
  }
6915
6915
  },
6916
+ {
6917
+ "name": "FlowingGradient",
6918
+ "category": "Textures",
6919
+ "description": "Liquid silk gradient with organic flowing color bands",
6920
+ "fileName": "FlowingGradient",
6921
+ "definition": {
6922
+ "name": "FlowingGradient",
6923
+ "category": "Textures",
6924
+ "description": "Liquid silk gradient with organic flowing color bands",
6925
+ "props": {
6926
+ "colorA": {
6927
+ "default": "#0a0015",
6928
+ "description": "Deep background color",
6929
+ "ui": {
6930
+ "type": "color",
6931
+ "label": "Color A",
6932
+ "group": "Colors"
6933
+ }
6934
+ },
6935
+ "colorB": {
6936
+ "default": "#6b17e6",
6937
+ "description": "Primary accent color",
6938
+ "ui": {
6939
+ "type": "color",
6940
+ "label": "Color B",
6941
+ "group": "Colors"
6942
+ }
6943
+ },
6944
+ "colorC": {
6945
+ "default": "#ff4d6a",
6946
+ "description": "Secondary accent color",
6947
+ "ui": {
6948
+ "type": "color",
6949
+ "label": "Color C",
6950
+ "group": "Colors"
6951
+ }
6952
+ },
6953
+ "colorD": {
6954
+ "default": "#ff6b35",
6955
+ "description": "Tertiary accent color",
6956
+ "ui": {
6957
+ "type": "color",
6958
+ "label": "Color D",
6959
+ "group": "Colors"
6960
+ }
6961
+ },
6962
+ "colorSpace": {
6963
+ "default": "oklch",
6964
+ "compileTime": true,
6965
+ "description": "Color space for color interpolation",
6966
+ "ui": {
6967
+ "type": "select",
6968
+ "options": [
6969
+ {
6970
+ "label": "Linear RGB",
6971
+ "value": "linear"
6972
+ },
6973
+ {
6974
+ "label": "OKLCh",
6975
+ "value": "oklch"
6976
+ },
6977
+ {
6978
+ "label": "OKLAB",
6979
+ "value": "oklab"
6980
+ },
6981
+ {
6982
+ "label": "HSL",
6983
+ "value": "hsl"
6984
+ },
6985
+ {
6986
+ "label": "HSV",
6987
+ "value": "hsv"
6988
+ },
6989
+ {
6990
+ "label": "LCH",
6991
+ "value": "lch"
6992
+ }
6993
+ ],
6994
+ "label": "Color Space",
6995
+ "group": "Colors"
6996
+ }
6997
+ },
6998
+ "speed": {
6999
+ "default": 1,
7000
+ "description": "Animation speed",
7001
+ "ui": {
7002
+ "type": "range",
7003
+ "min": 0,
7004
+ "max": 10,
7005
+ "step": 0.1,
7006
+ "label": "Speed",
7007
+ "group": "Effect"
7008
+ }
7009
+ },
7010
+ "distortion": {
7011
+ "default": 0.5,
7012
+ "description": "Organic distortion intensity",
7013
+ "ui": {
7014
+ "type": [
7015
+ "range",
7016
+ "map"
7017
+ ],
7018
+ "min": 0,
7019
+ "max": 2,
7020
+ "step": 0.1,
7021
+ "label": "Distortion",
7022
+ "group": "Effect"
7023
+ }
7024
+ },
7025
+ "seed": {
7026
+ "default": 0,
7027
+ "description": "Random seed for variation",
7028
+ "ui": {
7029
+ "type": [
7030
+ "range",
7031
+ "map"
7032
+ ],
7033
+ "min": 0,
7034
+ "max": 100,
7035
+ "step": 1,
7036
+ "label": "Seed",
7037
+ "group": "Effect"
7038
+ }
7039
+ }
7040
+ }
7041
+ },
7042
+ "propsMetadata": {
7043
+ "colorA": {
7044
+ "ui": {
7045
+ "type": "color",
7046
+ "label": "Color A",
7047
+ "group": "Colors"
7048
+ },
7049
+ "default": "#0a0015",
7050
+ "description": "Deep background color"
7051
+ },
7052
+ "colorB": {
7053
+ "ui": {
7054
+ "type": "color",
7055
+ "label": "Color B",
7056
+ "group": "Colors"
7057
+ },
7058
+ "default": "#6b17e6",
7059
+ "description": "Primary accent color"
7060
+ },
7061
+ "colorC": {
7062
+ "ui": {
7063
+ "type": "color",
7064
+ "label": "Color C",
7065
+ "group": "Colors"
7066
+ },
7067
+ "default": "#ff4d6a",
7068
+ "description": "Secondary accent color"
7069
+ },
7070
+ "colorD": {
7071
+ "ui": {
7072
+ "type": "color",
7073
+ "label": "Color D",
7074
+ "group": "Colors"
7075
+ },
7076
+ "default": "#ff6b35",
7077
+ "description": "Tertiary accent color"
7078
+ },
7079
+ "colorSpace": {
7080
+ "ui": {
7081
+ "type": "select",
7082
+ "options": [
7083
+ {
7084
+ "label": "Linear RGB",
7085
+ "value": "linear"
7086
+ },
7087
+ {
7088
+ "label": "OKLCh",
7089
+ "value": "oklch"
7090
+ },
7091
+ {
7092
+ "label": "OKLAB",
7093
+ "value": "oklab"
7094
+ },
7095
+ {
7096
+ "label": "HSL",
7097
+ "value": "hsl"
7098
+ },
7099
+ {
7100
+ "label": "HSV",
7101
+ "value": "hsv"
7102
+ },
7103
+ {
7104
+ "label": "LCH",
7105
+ "value": "lch"
7106
+ }
7107
+ ],
7108
+ "label": "Color Space",
7109
+ "group": "Colors"
7110
+ },
7111
+ "default": "oklch",
7112
+ "description": "Color space for color interpolation"
7113
+ },
7114
+ "speed": {
7115
+ "ui": {
7116
+ "type": "range",
7117
+ "min": 0,
7118
+ "max": 10,
7119
+ "step": 0.1,
7120
+ "label": "Speed",
7121
+ "group": "Effect"
7122
+ },
7123
+ "default": 1,
7124
+ "description": "Animation speed"
7125
+ },
7126
+ "distortion": {
7127
+ "ui": {
7128
+ "type": [
7129
+ "range",
7130
+ "map"
7131
+ ],
7132
+ "min": 0,
7133
+ "max": 2,
7134
+ "step": 0.1,
7135
+ "label": "Distortion",
7136
+ "group": "Effect"
7137
+ },
7138
+ "default": 0.5,
7139
+ "description": "Organic distortion intensity"
7140
+ },
7141
+ "seed": {
7142
+ "ui": {
7143
+ "type": [
7144
+ "range",
7145
+ "map"
7146
+ ],
7147
+ "min": 0,
7148
+ "max": 100,
7149
+ "step": 1,
7150
+ "label": "Seed",
7151
+ "group": "Effect"
7152
+ },
7153
+ "default": 0,
7154
+ "description": "Random seed for variation"
7155
+ }
7156
+ }
7157
+ },
6916
7158
  {
6917
7159
  "name": "Form3D",
6918
7160
  "category": "Distortions",
@@ -0,0 +1,31 @@
1
+ import { JSX } from 'solid-js';
2
+ import { BlendMode, PropDriver, TransformConfig } from '../../core';
3
+ import { ComponentProps } from '../../core/shaders/FlowingGradient';
4
+ export type { ComponentProps };
5
+ /**
6
+ * Base props that all shader components have
7
+ */
8
+ interface BaseShaderProps {
9
+ children?: JSX.Element;
10
+ blendMode?: BlendMode;
11
+ opacity?: number;
12
+ visible?: boolean;
13
+ id?: string;
14
+ maskSource?: string;
15
+ maskType?: string;
16
+ renderOrder?: number;
17
+ transform?: Partial<TransformConfig>;
18
+ }
19
+ /**
20
+ * Component-specific props that merge base props with shader-specific props
21
+ * Note: ComponentProps are made optional since they have defaults from the shader definition
22
+ */
23
+ type ShaderComponentProps = BaseShaderProps & Partial<Omit<ComponentProps, 'distortion' | 'seed'>> & {
24
+ distortion?: ComponentProps['distortion'] | PropDriver;
25
+ seed?: ComponentProps['seed'] | PropDriver;
26
+ };
27
+ /**
28
+ * The main Solid wrapper component for Shader shader nodes
29
+ */
30
+ export default function ShaderComponent(props: ShaderComponentProps): JSX.Element;
31
+ //# sourceMappingURL=FlowingGradient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FlowingGradient.d.ts","sourceRoot":"","sources":["../../src/components/FlowingGradient.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA4D,KAAK,GAAG,EAAE,MAAM,UAAU,CAAC;AAC9F,OAAO,EAGH,KAAK,SAAS,EAId,KAAK,UAAU,EACf,KAAK,eAAe,EACvB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAGxF,YAAY,EAAE,cAAc,EAAE,CAAC;AAI/B;;GAEG;AACH,UAAU,eAAe;IACrB,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;CACxC;AAOD;;;GAGG;AACH,KAAK,oBAAoB,GAAG,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,GAAG,MAAM,CAAC,CAAC,GAAG;IACnG,UAAU,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,GAAG,UAAU,CAAC;IACvD,IAAI,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC;CAC5C,CAAC;AAmCF;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,oBAAoB,eA+LlE"}
@@ -0,0 +1,183 @@
1
+ import { createComponent, template, setAttribute, insert, use } from "solid-js/web";
2
+ import { splitProps, createMemo, onMount, onCleanup, createEffect } from "solid-js";
3
+ import { createUniformsMap } from "../../core/index.js";
4
+ import { setColorSpaceMode } from "../../core/utilities/transformations/index.js";
5
+ import { componentDefinition } from "../../core/shaders/FlowingGradient/index.js";
6
+ import { useShaderContext, ShaderContext } from "../engine/Shader.js";
7
+ var _tmpl$ = /* @__PURE__ */ template(`<span style=display:contents>`);
8
+ function isPropDriver(value) {
9
+ return typeof value === "object" && value !== null && "type" in value && (value.type === "map" || value.type === "mouse" || value.type === "mouse-position" || value.type === "auto-animate");
10
+ }
11
+ const DEFAULT_TRANSFORM = {
12
+ offsetX: 0,
13
+ offsetY: 0,
14
+ rotation: 0,
15
+ scale: 1,
16
+ anchorX: 0.5,
17
+ anchorY: 0.5,
18
+ edges: "transparent"
19
+ };
20
+ const defaultProps = {
21
+ blendMode: "normal",
22
+ visible: true
23
+ // opacity intentionally has no default - handled by renderer
24
+ // transform intentionally has no default - handled by effectiveTransform
25
+ };
26
+ try {
27
+ if (componentDefinition && componentDefinition.props) {
28
+ Object.entries(componentDefinition.props).forEach(([key, config]) => {
29
+ const propConfig = config;
30
+ if (propConfig && typeof propConfig === "object" && "default" in propConfig) {
31
+ defaultProps[key] = propConfig.default;
32
+ }
33
+ });
34
+ }
35
+ } catch (e) {
36
+ console.warn("Error extracting default props:", e);
37
+ }
38
+ function ShaderComponent(props) {
39
+ const [local, otherProps] = splitProps(props, ["children"]);
40
+ const context = useShaderContext();
41
+ const {
42
+ shaderParentId: parentId,
43
+ shaderNodeRegister: parentRegister,
44
+ shaderUniformUpdate: parentUniformUpdate,
45
+ shaderMetadataUpdate: parentMetadataUpdate,
46
+ shaderColorSpace
47
+ } = context;
48
+ const instanceId = (props.id ? props.id.replace(/[^a-zA-Z0-9_]/g, "_") : null) || Math.random().toString(36).substring(2, 10);
49
+ const effectiveProps = createMemo(() => {
50
+ let baseProps = {
51
+ ...defaultProps
52
+ };
53
+ for (const [key, value] of Object.entries(otherProps)) {
54
+ if (value !== void 0 && !isPropDriver(value)) {
55
+ baseProps[key] = value;
56
+ }
57
+ }
58
+ return baseProps;
59
+ });
60
+ const effectiveTransform = createMemo(() => ({
61
+ ...DEFAULT_TRANSFORM,
62
+ ...props.transform
63
+ }));
64
+ const mapsFromProps = createMemo(() => {
65
+ const maps = {};
66
+ for (const [key, value] of Object.entries(otherProps)) {
67
+ if (isPropDriver(value)) maps[key] = value;
68
+ }
69
+ return Object.keys(maps).length > 0 ? maps : void 0;
70
+ });
71
+ let uniformsMap = null;
72
+ const getUniformsMap = () => {
73
+ if (!uniformsMap) {
74
+ setColorSpaceMode(shaderColorSpace);
75
+ uniformsMap = createUniformsMap(componentDefinition, effectiveProps(), instanceId);
76
+ }
77
+ return uniformsMap;
78
+ };
79
+ const childContextValue = createMemo(() => ({
80
+ ...context,
81
+ shaderParentId: instanceId
82
+ }));
83
+ let markerRef;
84
+ let detectedRenderOrder = void 0;
85
+ let isRegistered = false;
86
+ onMount(() => {
87
+ const uniforms = getUniformsMap();
88
+ if (!uniforms) return;
89
+ try {
90
+ const metadata = {
91
+ blendMode: props.blendMode || "normal",
92
+ opacity: props.opacity,
93
+ visible: props.visible === false ? false : true,
94
+ id: props.id,
95
+ mask: props.maskSource ? {
96
+ source: props.maskSource,
97
+ type: props.maskType || "alpha"
98
+ } : void 0,
99
+ maps: mapsFromProps(),
100
+ renderOrder: props.renderOrder ?? detectedRenderOrder,
101
+ transform: effectiveTransform()
102
+ };
103
+ parentRegister(instanceId, componentDefinition.fragmentNode, parentId, metadata, uniforms, componentDefinition);
104
+ isRegistered = true;
105
+ if (props.renderOrder === void 0 && markerRef) {
106
+ const parent = markerRef.parentElement;
107
+ if (parent) {
108
+ const siblings = parent.querySelectorAll(":scope > [data-shader-id]");
109
+ const position = Array.from(siblings).indexOf(markerRef);
110
+ if (position >= 0) {
111
+ detectedRenderOrder = position;
112
+ parentMetadataUpdate(instanceId, {
113
+ renderOrder: position
114
+ });
115
+ }
116
+ }
117
+ }
118
+ } catch (error) {
119
+ console.error("Error registering shader node:", error);
120
+ }
121
+ });
122
+ onCleanup(() => {
123
+ isRegistered = false;
124
+ parentRegister(instanceId, null, null, null, null);
125
+ });
126
+ createEffect(() => {
127
+ if (!isRegistered) return;
128
+ const uniforms = getUniformsMap();
129
+ if (!uniforms) return;
130
+ try {
131
+ const props_snapshot = effectiveProps();
132
+ Object.entries(uniforms).forEach(([propName, uniformData]) => {
133
+ if (!uniformData || typeof uniformData !== "object") return;
134
+ const {
135
+ uniform
136
+ } = uniformData;
137
+ if ((uniform == null ? void 0 : uniform.value) !== void 0 && propName in props_snapshot) {
138
+ const newValue = props_snapshot[propName];
139
+ parentUniformUpdate(instanceId, propName, newValue);
140
+ }
141
+ });
142
+ } catch (error) {
143
+ console.error("Error updating uniforms:", error);
144
+ }
145
+ });
146
+ createEffect(() => {
147
+ if (!isRegistered) return;
148
+ try {
149
+ const metadata = {
150
+ blendMode: props.blendMode || "normal",
151
+ opacity: props.opacity,
152
+ visible: props.visible === false ? false : true,
153
+ id: props.id,
154
+ mask: props.maskSource ? {
155
+ source: props.maskSource,
156
+ type: props.maskType || "alpha"
157
+ } : void 0,
158
+ maps: mapsFromProps(),
159
+ renderOrder: props.renderOrder ?? detectedRenderOrder,
160
+ transform: effectiveTransform()
161
+ };
162
+ parentMetadataUpdate(instanceId, metadata);
163
+ } catch (error) {
164
+ console.error("Error updating metadata:", error);
165
+ }
166
+ });
167
+ return createComponent(ShaderContext.Provider, {
168
+ get value() {
169
+ return childContextValue();
170
+ },
171
+ get children() {
172
+ var _el$ = _tmpl$();
173
+ var _ref$ = markerRef;
174
+ typeof _ref$ === "function" ? use(_ref$, _el$) : markerRef = _el$;
175
+ setAttribute(_el$, "data-shader-id", instanceId);
176
+ insert(_el$, () => local.children);
177
+ return _el$;
178
+ }
179
+ });
180
+ }
181
+ export {
182
+ ShaderComponent as default
183
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"Preview.d.ts","sourceRoot":"","sources":["../../src/engine/Preview.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+C,KAAK,GAAG,EAAoC,MAAM,UAAU,CAAA;AAkSlH,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,GAAG,CAAC,aAAa,GAAG,MAAM,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAID,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,KAAK,EAAE,YAAY,eAmHlD"}
1
+ {"version":3,"file":"Preview.d.ts","sourceRoot":"","sources":["../../src/engine/Preview.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+C,KAAK,GAAG,EAAoC,MAAM,UAAU,CAAA;AAoSlH,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,GAAG,CAAC,aAAa,GAAG,MAAM,CAAA;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAID,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,KAAK,EAAE,YAAY,eAmHlD"}
@@ -1,36 +1,37 @@
1
1
  import { template, insert, memo, createComponent, effect, className, style, setAttribute, Dynamic, mergeProps } from "solid-js/web";
2
2
  import { createSignal, createEffect, createMemo, For } from "solid-js";
3
- import ShaderComponent$1p from "../components/AngularBlur.js";
4
- import ShaderComponent$1o from "../components/Ascii.js";
5
- import ShaderComponent$1n from "../components/Aurora.js";
6
- import ShaderComponent$1m from "../components/Beam.js";
7
- import ShaderComponent$1l from "../components/Blob.js";
8
- import ShaderComponent$1k from "../components/Blur.js";
9
- import ShaderComponent$1j from "../components/BrightnessContrast.js";
10
- import ShaderComponent$1i from "../components/Bulge.js";
11
- import ShaderComponent$1h from "../components/CRTScreen.js";
12
- import ShaderComponent$1g from "../components/ChannelBlur.js";
13
- import ShaderComponent$1f from "../components/Checkerboard.js";
14
- import ShaderComponent$1e from "../components/ChromaFlow.js";
15
- import ShaderComponent$1d from "../components/ChromaticAberration.js";
16
- import ShaderComponent$1c from "../components/Circle.js";
17
- import ShaderComponent$1b from "../components/ConcentricSpin.js";
18
- import ShaderComponent$1a from "../components/ContourLines.js";
19
- import ShaderComponent$19 from "../components/Crescent.js";
20
- import ShaderComponent$18 from "../components/Cross.js";
21
- import ShaderComponent$17 from "../components/CursorRipples.js";
22
- import ShaderComponent$16 from "../components/CursorTrail.js";
23
- import ShaderComponent$15 from "../components/DiffuseBlur.js";
24
- import ShaderComponent$14 from "../components/Dither.js";
25
- import ShaderComponent$13 from "../components/DotGrid.js";
26
- import ShaderComponent$12 from "../components/Duotone.js";
27
- import ShaderComponent$11 from "../components/Ellipse.js";
28
- import ShaderComponent$10 from "../components/Emboss.js";
29
- import ShaderComponent$$ from "../components/FallingLines.js";
30
- import ShaderComponent$_ from "../components/FilmGrain.js";
31
- import ShaderComponent$Z from "../components/FloatingParticles.js";
32
- import ShaderComponent$Y from "../components/FlowField.js";
33
- import ShaderComponent$X from "../components/Flower.js";
3
+ import ShaderComponent$1q from "../components/AngularBlur.js";
4
+ import ShaderComponent$1p from "../components/Ascii.js";
5
+ import ShaderComponent$1o from "../components/Aurora.js";
6
+ import ShaderComponent$1n from "../components/Beam.js";
7
+ import ShaderComponent$1m from "../components/Blob.js";
8
+ import ShaderComponent$1l from "../components/Blur.js";
9
+ import ShaderComponent$1k from "../components/BrightnessContrast.js";
10
+ import ShaderComponent$1j from "../components/Bulge.js";
11
+ import ShaderComponent$1i from "../components/CRTScreen.js";
12
+ import ShaderComponent$1h from "../components/ChannelBlur.js";
13
+ import ShaderComponent$1g from "../components/Checkerboard.js";
14
+ import ShaderComponent$1f from "../components/ChromaFlow.js";
15
+ import ShaderComponent$1e from "../components/ChromaticAberration.js";
16
+ import ShaderComponent$1d from "../components/Circle.js";
17
+ import ShaderComponent$1c from "../components/ConcentricSpin.js";
18
+ import ShaderComponent$1b from "../components/ContourLines.js";
19
+ import ShaderComponent$1a from "../components/Crescent.js";
20
+ import ShaderComponent$19 from "../components/Cross.js";
21
+ import ShaderComponent$18 from "../components/CursorRipples.js";
22
+ import ShaderComponent$17 from "../components/CursorTrail.js";
23
+ import ShaderComponent$16 from "../components/DiffuseBlur.js";
24
+ import ShaderComponent$15 from "../components/Dither.js";
25
+ import ShaderComponent$14 from "../components/DotGrid.js";
26
+ import ShaderComponent$13 from "../components/Duotone.js";
27
+ import ShaderComponent$12 from "../components/Ellipse.js";
28
+ import ShaderComponent$11 from "../components/Emboss.js";
29
+ import ShaderComponent$10 from "../components/FallingLines.js";
30
+ import ShaderComponent$$ from "../components/FilmGrain.js";
31
+ import ShaderComponent$_ from "../components/FloatingParticles.js";
32
+ import ShaderComponent$Z from "../components/FlowField.js";
33
+ import ShaderComponent$Y from "../components/Flower.js";
34
+ import ShaderComponent$X from "../components/FlowingGradient.js";
34
35
  import ShaderComponent$W from "../components/Form3D.js";
35
36
  import ShaderComponent$V from "../components/Glass.js";
36
37
  import ShaderComponent$U from "../components/GlassTiles.js";
@@ -93,37 +94,38 @@ import ShaderComponent from "../components/ZoomBlur.js";
93
94
  import Shader from "./Shader.js";
94
95
  var _tmpl$ = /* @__PURE__ */ template(`<div style=position:relative;width:100%;height:100%><a target=_blank rel="noopener noreferrer"style="position:absolute;bottom:8px;right:12px;font-size:11px;font-family:-apple-system, BlinkMacSystemFont, &quot;Segoe UI&quot;, Roboto, sans-serif;color:rgba(255, 255, 255, 0.5);text-decoration:none;pointer-events:auto;z-index:10;text-shadow:0 1px 3px rgba(0, 0, 0, 0.4);transition:color 0.2s ease">`);
95
96
  const componentMap = {
96
- AngularBlur: ShaderComponent$1p,
97
- Ascii: ShaderComponent$1o,
98
- Aurora: ShaderComponent$1n,
99
- Beam: ShaderComponent$1m,
100
- Blob: ShaderComponent$1l,
101
- Blur: ShaderComponent$1k,
102
- BrightnessContrast: ShaderComponent$1j,
103
- Bulge: ShaderComponent$1i,
104
- CRTScreen: ShaderComponent$1h,
105
- ChannelBlur: ShaderComponent$1g,
106
- Checkerboard: ShaderComponent$1f,
107
- ChromaFlow: ShaderComponent$1e,
108
- ChromaticAberration: ShaderComponent$1d,
109
- Circle: ShaderComponent$1c,
110
- ConcentricSpin: ShaderComponent$1b,
111
- ContourLines: ShaderComponent$1a,
112
- Crescent: ShaderComponent$19,
113
- Cross: ShaderComponent$18,
114
- CursorRipples: ShaderComponent$17,
115
- CursorTrail: ShaderComponent$16,
116
- DiffuseBlur: ShaderComponent$15,
117
- Dither: ShaderComponent$14,
118
- DotGrid: ShaderComponent$13,
119
- Duotone: ShaderComponent$12,
120
- Ellipse: ShaderComponent$11,
121
- Emboss: ShaderComponent$10,
122
- FallingLines: ShaderComponent$$,
123
- FilmGrain: ShaderComponent$_,
124
- FloatingParticles: ShaderComponent$Z,
125
- FlowField: ShaderComponent$Y,
126
- Flower: ShaderComponent$X,
97
+ AngularBlur: ShaderComponent$1q,
98
+ Ascii: ShaderComponent$1p,
99
+ Aurora: ShaderComponent$1o,
100
+ Beam: ShaderComponent$1n,
101
+ Blob: ShaderComponent$1m,
102
+ Blur: ShaderComponent$1l,
103
+ BrightnessContrast: ShaderComponent$1k,
104
+ Bulge: ShaderComponent$1j,
105
+ CRTScreen: ShaderComponent$1i,
106
+ ChannelBlur: ShaderComponent$1h,
107
+ Checkerboard: ShaderComponent$1g,
108
+ ChromaFlow: ShaderComponent$1f,
109
+ ChromaticAberration: ShaderComponent$1e,
110
+ Circle: ShaderComponent$1d,
111
+ ConcentricSpin: ShaderComponent$1c,
112
+ ContourLines: ShaderComponent$1b,
113
+ Crescent: ShaderComponent$1a,
114
+ Cross: ShaderComponent$19,
115
+ CursorRipples: ShaderComponent$18,
116
+ CursorTrail: ShaderComponent$17,
117
+ DiffuseBlur: ShaderComponent$16,
118
+ Dither: ShaderComponent$15,
119
+ DotGrid: ShaderComponent$14,
120
+ Duotone: ShaderComponent$13,
121
+ Ellipse: ShaderComponent$12,
122
+ Emboss: ShaderComponent$11,
123
+ FallingLines: ShaderComponent$10,
124
+ FilmGrain: ShaderComponent$$,
125
+ FloatingParticles: ShaderComponent$_,
126
+ FlowField: ShaderComponent$Z,
127
+ Flower: ShaderComponent$Y,
128
+ FlowingGradient: ShaderComponent$X,
127
129
  Form3D: ShaderComponent$W,
128
130
  Glass: ShaderComponent$V,
129
131
  GlassTiles: ShaderComponent$U,
@@ -12,6 +12,7 @@ interface ShaderProps {
12
12
  disableTelemetry?: boolean;
13
13
  colorSpace?: 'p3-linear' | 'srgb';
14
14
  isPreview?: boolean;
15
+ onReady?: () => void;
15
16
  style?: JSX.CSSProperties;
16
17
  class?: string;
17
18
  [key: string]: any;
@@ -1 +1 @@
1
- {"version":3,"file":"Shader.d.ts","sourceRoot":"","sources":["../../src/engine/Shader.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuF,KAAK,GAAG,EAAE,MAAM,UAAU,CAAC;AASzH,MAAM,WAAW,kBAAkB;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,mBAAmB,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAClJ,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/E,oBAAoB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;IAC9D,gBAAgB,EAAE,WAAW,GAAG,MAAM,CAAC;CAC1C;AAED,eAAO,MAAM,aAAa,4DAAsC,CAAC;AAEjE,UAAU,WAAW;IACjB,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,GAAG,CAAC,aAAa,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,QAAQ,EAAE,WAAW,eA+QnD;AAGD,wBAAgB,gBAAgB,uBAM/B"}
1
+ {"version":3,"file":"Shader.d.ts","sourceRoot":"","sources":["../../src/engine/Shader.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAuF,KAAK,GAAG,EAAE,MAAM,UAAU,CAAC;AASzH,MAAM,WAAW,kBAAkB;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,mBAAmB,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAClJ,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/E,oBAAoB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;IAC9D,gBAAgB,EAAE,WAAW,GAAG,MAAM,CAAC;CAC1C;AAED,eAAO,MAAM,aAAa,4DAAsC,CAAC;AAEjE,UAAU,WAAW;IACjB,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,GAAG,CAAC,aAAa,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,QAAQ,EAAE,WAAW,eAkRnD;AAGD,wBAAgB,gBAAgB,uBAM/B"}
@@ -7,11 +7,15 @@ import { setColorSpaceMode } from "../../core/utilities/transformations/index.js
7
7
  var _tmpl$ = /* @__PURE__ */ template(`<div><canvas data-renderer=shaders style=width:100%;height:100%;display:block>`);
8
8
  const ShaderContext = createContext();
9
9
  function Shader(allProps) {
10
- const [props, domProps] = splitProps(allProps, ["children", "disableTelemetry", "colorSpace", "isPreview", "style", "class"]);
10
+ const [props, domProps] = splitProps(allProps, ["children", "disableTelemetry", "colorSpace", "isPreview", "onReady", "style", "class"]);
11
11
  let containerRef;
12
12
  let canvasRef;
13
13
  const rootId = "shader-root-" + Math.random().toString(36).substring(7);
14
14
  const rendererInstance = shaderRenderer();
15
+ rendererInstance.setOnReady(() => {
16
+ var _a;
17
+ return (_a = props.onReady) == null ? void 0 : _a.call(props);
18
+ });
15
19
  let telemetryCollector = null;
16
20
  let telemetryStartTimeout = null;
17
21
  let shouldSendTelemetry = null;
@@ -63,7 +67,7 @@ function Shader(allProps) {
63
67
  const checkRendering = () => {
64
68
  const stats = rendererInstance.getPerformanceStats();
65
69
  if (stats.fps > 0) {
66
- const version = "2.5.81";
70
+ const version = "2.5.82";
67
71
  telemetryCollector = startTelemetry(rendererInstance, version, props.disableTelemetry, props.isPreview);
68
72
  if (telemetryCollector) {
69
73
  telemetryCollector.start();
@@ -29,6 +29,7 @@ export { default as FilmGrain } from './components/FilmGrain';
29
29
  export { default as FloatingParticles } from './components/FloatingParticles';
30
30
  export { default as FlowField } from './components/FlowField';
31
31
  export { default as Flower } from './components/Flower';
32
+ export { default as FlowingGradient } from './components/FlowingGradient';
32
33
  export { default as Form3D } from './components/Form3D';
33
34
  export { default as Glass } from './components/Glass';
34
35
  export { default as GlassTiles } from './components/GlassTiles';