shaders 2.2.45 → 2.2.46

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 (274) hide show
  1. package/LICENSE +17 -6
  2. package/README.md +4 -60
  3. package/dist/core/index.js +0 -25
  4. package/dist/core/renderer.d.ts +0 -1
  5. package/dist/core/renderer.d.ts.map +1 -1
  6. package/dist/core/telemetry/collector.d.ts.map +1 -1
  7. package/dist/core/telemetry/environmentCollector.d.ts.map +1 -1
  8. package/dist/core/telemetry/index.d.ts +1 -1
  9. package/dist/core/telemetry/index.d.ts.map +1 -1
  10. package/dist/core/telemetry/index.js +28 -23
  11. package/dist/core/telemetry/types.d.ts +2 -8
  12. package/dist/core/telemetry/types.d.ts.map +1 -1
  13. package/dist/react/AngularBlur.js +7 -7
  14. package/dist/react/Ascii.js +7 -7
  15. package/dist/react/Beam.js +7 -7
  16. package/dist/react/Blob.js +7 -7
  17. package/dist/react/Blur.js +7 -7
  18. package/dist/react/BrightnessContrast.js +7 -7
  19. package/dist/react/Bulge.js +7 -7
  20. package/dist/react/CRTScreen.js +7 -7
  21. package/dist/react/ChannelBlur.js +7 -7
  22. package/dist/react/Checkerboard.js +7 -7
  23. package/dist/react/ChromaFlow.js +7 -7
  24. package/dist/react/ChromaticAberration.js +7 -7
  25. package/dist/react/Circle.js +7 -7
  26. package/dist/react/CursorTrail.js +7 -7
  27. package/dist/react/DiffuseBlur.js +7 -7
  28. package/dist/react/Dither.js +7 -7
  29. package/dist/react/DotGrid.js +7 -7
  30. package/dist/react/Duotone.js +7 -7
  31. package/dist/react/FilmGrain.js +7 -7
  32. package/dist/react/FloatingParticles.js +7 -7
  33. package/dist/react/GlassTiles.js +7 -7
  34. package/dist/react/Glow.js +7 -7
  35. package/dist/react/Godrays.js +7 -7
  36. package/dist/react/Grayscale.js +7 -7
  37. package/dist/react/Grid.js +7 -7
  38. package/dist/react/GridDistortion.js +7 -7
  39. package/dist/react/Group.js +7 -7
  40. package/dist/react/Halftone.js +7 -7
  41. package/dist/react/HueShift.js +7 -7
  42. package/dist/react/ImageTexture.js +7 -7
  43. package/dist/react/Invert.js +7 -7
  44. package/dist/react/LinearBlur.js +7 -7
  45. package/dist/react/LinearGradient.js +7 -7
  46. package/dist/react/Liquify.js +7 -7
  47. package/dist/react/Perspective.js +7 -7
  48. package/dist/react/Pixelate.js +7 -7
  49. package/dist/react/PolarCoordinates.js +7 -7
  50. package/dist/react/Posterize.js +7 -7
  51. package/dist/react/ProgressiveBlur.js +7 -7
  52. package/dist/react/RadialGradient.js +7 -7
  53. package/dist/react/RectangularCoordinates.js +7 -7
  54. package/dist/react/Ripples.js +7 -7
  55. package/dist/react/Saturation.js +7 -7
  56. package/dist/react/Shader.js +33 -21
  57. package/dist/react/Sharpness.js +7 -7
  58. package/dist/react/Shatter.js +7 -7
  59. package/dist/react/SimplexNoise.js +7 -7
  60. package/dist/react/SineWave.js +7 -7
  61. package/dist/react/SolidColor.js +7 -7
  62. package/dist/react/Spherize.js +7 -7
  63. package/dist/react/Spiral.js +7 -7
  64. package/dist/react/Strands.js +7 -7
  65. package/dist/react/Stretch.js +7 -7
  66. package/dist/react/Stripes.js +7 -7
  67. package/dist/react/Swirl.js +7 -7
  68. package/dist/react/TiltShift.js +7 -7
  69. package/dist/react/Tint.js +7 -7
  70. package/dist/react/Tritone.js +7 -7
  71. package/dist/react/Twirl.js +7 -7
  72. package/dist/react/Vibrance.js +7 -7
  73. package/dist/react/WaveDistortion.js +7 -7
  74. package/dist/react/WebcamTexture.js +7 -7
  75. package/dist/react/ZoomBlur.js +7 -7
  76. package/dist/react/components/AngularBlur.d.ts +2 -2
  77. package/dist/react/components/AngularBlur.d.ts.map +1 -1
  78. package/dist/react/components/Ascii.d.ts +2 -2
  79. package/dist/react/components/Ascii.d.ts.map +1 -1
  80. package/dist/react/components/Beam.d.ts +2 -2
  81. package/dist/react/components/Beam.d.ts.map +1 -1
  82. package/dist/react/components/Blob.d.ts +2 -2
  83. package/dist/react/components/Blob.d.ts.map +1 -1
  84. package/dist/react/components/Blur.d.ts +2 -2
  85. package/dist/react/components/Blur.d.ts.map +1 -1
  86. package/dist/react/components/BrightnessContrast.d.ts +2 -2
  87. package/dist/react/components/BrightnessContrast.d.ts.map +1 -1
  88. package/dist/react/components/Bulge.d.ts +2 -2
  89. package/dist/react/components/Bulge.d.ts.map +1 -1
  90. package/dist/react/components/CRTScreen.d.ts +2 -2
  91. package/dist/react/components/CRTScreen.d.ts.map +1 -1
  92. package/dist/react/components/ChannelBlur.d.ts +2 -2
  93. package/dist/react/components/ChannelBlur.d.ts.map +1 -1
  94. package/dist/react/components/Checkerboard.d.ts +2 -2
  95. package/dist/react/components/Checkerboard.d.ts.map +1 -1
  96. package/dist/react/components/ChromaFlow.d.ts +2 -2
  97. package/dist/react/components/ChromaFlow.d.ts.map +1 -1
  98. package/dist/react/components/ChromaticAberration.d.ts +2 -2
  99. package/dist/react/components/ChromaticAberration.d.ts.map +1 -1
  100. package/dist/react/components/Circle.d.ts +2 -2
  101. package/dist/react/components/Circle.d.ts.map +1 -1
  102. package/dist/react/components/CursorTrail.d.ts +2 -2
  103. package/dist/react/components/CursorTrail.d.ts.map +1 -1
  104. package/dist/react/components/DiffuseBlur.d.ts +2 -2
  105. package/dist/react/components/DiffuseBlur.d.ts.map +1 -1
  106. package/dist/react/components/Dither.d.ts +2 -2
  107. package/dist/react/components/Dither.d.ts.map +1 -1
  108. package/dist/react/components/DotGrid.d.ts +2 -2
  109. package/dist/react/components/DotGrid.d.ts.map +1 -1
  110. package/dist/react/components/Duotone.d.ts +2 -2
  111. package/dist/react/components/Duotone.d.ts.map +1 -1
  112. package/dist/react/components/FilmGrain.d.ts +2 -2
  113. package/dist/react/components/FilmGrain.d.ts.map +1 -1
  114. package/dist/react/components/FloatingParticles.d.ts +2 -2
  115. package/dist/react/components/FloatingParticles.d.ts.map +1 -1
  116. package/dist/react/components/GlassTiles.d.ts +2 -2
  117. package/dist/react/components/GlassTiles.d.ts.map +1 -1
  118. package/dist/react/components/Glow.d.ts +2 -2
  119. package/dist/react/components/Glow.d.ts.map +1 -1
  120. package/dist/react/components/Godrays.d.ts +2 -2
  121. package/dist/react/components/Godrays.d.ts.map +1 -1
  122. package/dist/react/components/Grayscale.d.ts +2 -2
  123. package/dist/react/components/Grayscale.d.ts.map +1 -1
  124. package/dist/react/components/Grid.d.ts +2 -2
  125. package/dist/react/components/Grid.d.ts.map +1 -1
  126. package/dist/react/components/GridDistortion.d.ts +2 -2
  127. package/dist/react/components/GridDistortion.d.ts.map +1 -1
  128. package/dist/react/components/Group.d.ts +2 -2
  129. package/dist/react/components/Group.d.ts.map +1 -1
  130. package/dist/react/components/Halftone.d.ts +2 -2
  131. package/dist/react/components/Halftone.d.ts.map +1 -1
  132. package/dist/react/components/HueShift.d.ts +2 -2
  133. package/dist/react/components/HueShift.d.ts.map +1 -1
  134. package/dist/react/components/ImageTexture.d.ts +2 -2
  135. package/dist/react/components/ImageTexture.d.ts.map +1 -1
  136. package/dist/react/components/Invert.d.ts +2 -2
  137. package/dist/react/components/Invert.d.ts.map +1 -1
  138. package/dist/react/components/LinearBlur.d.ts +2 -2
  139. package/dist/react/components/LinearBlur.d.ts.map +1 -1
  140. package/dist/react/components/LinearGradient.d.ts +2 -2
  141. package/dist/react/components/LinearGradient.d.ts.map +1 -1
  142. package/dist/react/components/Liquify.d.ts +2 -2
  143. package/dist/react/components/Liquify.d.ts.map +1 -1
  144. package/dist/react/components/Perspective.d.ts +2 -2
  145. package/dist/react/components/Perspective.d.ts.map +1 -1
  146. package/dist/react/components/Pixelate.d.ts +2 -2
  147. package/dist/react/components/Pixelate.d.ts.map +1 -1
  148. package/dist/react/components/PolarCoordinates.d.ts +2 -2
  149. package/dist/react/components/PolarCoordinates.d.ts.map +1 -1
  150. package/dist/react/components/Posterize.d.ts +2 -2
  151. package/dist/react/components/Posterize.d.ts.map +1 -1
  152. package/dist/react/components/ProgressiveBlur.d.ts +2 -2
  153. package/dist/react/components/ProgressiveBlur.d.ts.map +1 -1
  154. package/dist/react/components/RadialGradient.d.ts +2 -2
  155. package/dist/react/components/RadialGradient.d.ts.map +1 -1
  156. package/dist/react/components/RectangularCoordinates.d.ts +2 -2
  157. package/dist/react/components/RectangularCoordinates.d.ts.map +1 -1
  158. package/dist/react/components/Ripples.d.ts +2 -2
  159. package/dist/react/components/Ripples.d.ts.map +1 -1
  160. package/dist/react/components/Saturation.d.ts +2 -2
  161. package/dist/react/components/Saturation.d.ts.map +1 -1
  162. package/dist/react/components/Sharpness.d.ts +2 -2
  163. package/dist/react/components/Sharpness.d.ts.map +1 -1
  164. package/dist/react/components/Shatter.d.ts +2 -2
  165. package/dist/react/components/Shatter.d.ts.map +1 -1
  166. package/dist/react/components/SimplexNoise.d.ts +2 -2
  167. package/dist/react/components/SimplexNoise.d.ts.map +1 -1
  168. package/dist/react/components/SineWave.d.ts +2 -2
  169. package/dist/react/components/SineWave.d.ts.map +1 -1
  170. package/dist/react/components/SolidColor.d.ts +2 -2
  171. package/dist/react/components/SolidColor.d.ts.map +1 -1
  172. package/dist/react/components/Spherize.d.ts +2 -2
  173. package/dist/react/components/Spherize.d.ts.map +1 -1
  174. package/dist/react/components/Spiral.d.ts +2 -2
  175. package/dist/react/components/Spiral.d.ts.map +1 -1
  176. package/dist/react/components/Strands.d.ts +2 -2
  177. package/dist/react/components/Strands.d.ts.map +1 -1
  178. package/dist/react/components/Stretch.d.ts +2 -2
  179. package/dist/react/components/Stretch.d.ts.map +1 -1
  180. package/dist/react/components/Stripes.d.ts +2 -2
  181. package/dist/react/components/Stripes.d.ts.map +1 -1
  182. package/dist/react/components/Swirl.d.ts +2 -2
  183. package/dist/react/components/Swirl.d.ts.map +1 -1
  184. package/dist/react/components/TiltShift.d.ts +2 -2
  185. package/dist/react/components/TiltShift.d.ts.map +1 -1
  186. package/dist/react/components/Tint.d.ts +2 -2
  187. package/dist/react/components/Tint.d.ts.map +1 -1
  188. package/dist/react/components/Tritone.d.ts +2 -2
  189. package/dist/react/components/Tritone.d.ts.map +1 -1
  190. package/dist/react/components/Twirl.d.ts +2 -2
  191. package/dist/react/components/Twirl.d.ts.map +1 -1
  192. package/dist/react/components/Vibrance.d.ts +2 -2
  193. package/dist/react/components/Vibrance.d.ts.map +1 -1
  194. package/dist/react/components/WaveDistortion.d.ts +2 -2
  195. package/dist/react/components/WaveDistortion.d.ts.map +1 -1
  196. package/dist/react/components/WebcamTexture.d.ts +2 -2
  197. package/dist/react/components/WebcamTexture.d.ts.map +1 -1
  198. package/dist/react/components/ZoomBlur.d.ts +2 -2
  199. package/dist/react/components/ZoomBlur.d.ts.map +1 -1
  200. package/dist/react/engine/Shader.d.ts +9 -9
  201. package/dist/react/engine/Shader.d.ts.map +1 -1
  202. package/dist/react/engine/component.template.d.ts +2 -2
  203. package/dist/react/engine/component.template.d.ts.map +1 -1
  204. package/dist/solid/engine/Shader.d.ts +1 -1
  205. package/dist/solid/engine/Shader.d.ts.map +1 -1
  206. package/dist/solid/engine/Shader.js +24 -7
  207. package/dist/svelte/engine/Shader.svelte.d.ts +1 -1
  208. package/dist/svelte/index.js +22 -9
  209. package/dist/vue/AngularBlur.vue_vue_type_script_setup_true_lang.js +8 -8
  210. package/dist/vue/Ascii.vue_vue_type_script_setup_true_lang.js +8 -8
  211. package/dist/vue/Beam.vue_vue_type_script_setup_true_lang.js +8 -8
  212. package/dist/vue/Blob.vue_vue_type_script_setup_true_lang.js +8 -8
  213. package/dist/vue/Blur.vue_vue_type_script_setup_true_lang.js +8 -8
  214. package/dist/vue/BrightnessContrast.vue_vue_type_script_setup_true_lang.js +8 -8
  215. package/dist/vue/Bulge.vue_vue_type_script_setup_true_lang.js +8 -8
  216. package/dist/vue/CRTScreen.vue_vue_type_script_setup_true_lang.js +8 -8
  217. package/dist/vue/ChannelBlur.vue_vue_type_script_setup_true_lang.js +8 -8
  218. package/dist/vue/Checkerboard.vue_vue_type_script_setup_true_lang.js +8 -8
  219. package/dist/vue/ChromaFlow.vue_vue_type_script_setup_true_lang.js +8 -8
  220. package/dist/vue/ChromaticAberration.vue_vue_type_script_setup_true_lang.js +8 -8
  221. package/dist/vue/Circle.vue_vue_type_script_setup_true_lang.js +8 -8
  222. package/dist/vue/CursorTrail.vue_vue_type_script_setup_true_lang.js +8 -8
  223. package/dist/vue/DiffuseBlur.vue_vue_type_script_setup_true_lang.js +8 -8
  224. package/dist/vue/Dither.vue_vue_type_script_setup_true_lang.js +8 -8
  225. package/dist/vue/DotGrid.vue_vue_type_script_setup_true_lang.js +8 -8
  226. package/dist/vue/Duotone.vue_vue_type_script_setup_true_lang.js +8 -8
  227. package/dist/vue/FilmGrain.vue_vue_type_script_setup_true_lang.js +8 -8
  228. package/dist/vue/FloatingParticles.vue_vue_type_script_setup_true_lang.js +8 -8
  229. package/dist/vue/GlassTiles.vue_vue_type_script_setup_true_lang.js +8 -8
  230. package/dist/vue/Glow.vue_vue_type_script_setup_true_lang.js +8 -8
  231. package/dist/vue/Godrays.vue_vue_type_script_setup_true_lang.js +8 -8
  232. package/dist/vue/Grayscale.vue_vue_type_script_setup_true_lang.js +8 -8
  233. package/dist/vue/Grid.vue_vue_type_script_setup_true_lang.js +8 -8
  234. package/dist/vue/GridDistortion.vue_vue_type_script_setup_true_lang.js +8 -8
  235. package/dist/vue/Group.vue_vue_type_script_setup_true_lang.js +8 -8
  236. package/dist/vue/Halftone.vue_vue_type_script_setup_true_lang.js +8 -8
  237. package/dist/vue/HueShift.vue_vue_type_script_setup_true_lang.js +8 -8
  238. package/dist/vue/ImageTexture.vue_vue_type_script_setup_true_lang.js +8 -8
  239. package/dist/vue/Invert.vue_vue_type_script_setup_true_lang.js +8 -8
  240. package/dist/vue/LinearBlur.vue_vue_type_script_setup_true_lang.js +8 -8
  241. package/dist/vue/LinearGradient.vue_vue_type_script_setup_true_lang.js +8 -8
  242. package/dist/vue/Liquify.vue_vue_type_script_setup_true_lang.js +8 -8
  243. package/dist/vue/Perspective.vue_vue_type_script_setup_true_lang.js +8 -8
  244. package/dist/vue/Pixelate.vue_vue_type_script_setup_true_lang.js +8 -8
  245. package/dist/vue/PolarCoordinates.vue_vue_type_script_setup_true_lang.js +8 -8
  246. package/dist/vue/Posterize.vue_vue_type_script_setup_true_lang.js +8 -8
  247. package/dist/vue/ProgressiveBlur.vue_vue_type_script_setup_true_lang.js +8 -8
  248. package/dist/vue/RadialGradient.vue_vue_type_script_setup_true_lang.js +8 -8
  249. package/dist/vue/RectangularCoordinates.vue_vue_type_script_setup_true_lang.js +8 -8
  250. package/dist/vue/Ripples.vue_vue_type_script_setup_true_lang.js +8 -8
  251. package/dist/vue/Saturation.vue_vue_type_script_setup_true_lang.js +8 -8
  252. package/dist/vue/Shader.vue_vue_type_script_setup_true_lang.js +27 -14
  253. package/dist/vue/Sharpness.vue_vue_type_script_setup_true_lang.js +8 -8
  254. package/dist/vue/Shatter.vue_vue_type_script_setup_true_lang.js +8 -8
  255. package/dist/vue/SimplexNoise.vue_vue_type_script_setup_true_lang.js +8 -8
  256. package/dist/vue/SineWave.vue_vue_type_script_setup_true_lang.js +8 -8
  257. package/dist/vue/SolidColor.vue_vue_type_script_setup_true_lang.js +8 -8
  258. package/dist/vue/Spherize.vue_vue_type_script_setup_true_lang.js +8 -8
  259. package/dist/vue/Spiral.vue_vue_type_script_setup_true_lang.js +8 -8
  260. package/dist/vue/Strands.vue_vue_type_script_setup_true_lang.js +8 -8
  261. package/dist/vue/Stretch.vue_vue_type_script_setup_true_lang.js +8 -8
  262. package/dist/vue/Stripes.vue_vue_type_script_setup_true_lang.js +8 -8
  263. package/dist/vue/Swirl.vue_vue_type_script_setup_true_lang.js +8 -8
  264. package/dist/vue/TiltShift.vue_vue_type_script_setup_true_lang.js +8 -8
  265. package/dist/vue/Tint.vue_vue_type_script_setup_true_lang.js +8 -8
  266. package/dist/vue/Tritone.vue_vue_type_script_setup_true_lang.js +8 -8
  267. package/dist/vue/Twirl.vue_vue_type_script_setup_true_lang.js +8 -8
  268. package/dist/vue/Vibrance.vue_vue_type_script_setup_true_lang.js +8 -8
  269. package/dist/vue/WaveDistortion.vue_vue_type_script_setup_true_lang.js +8 -8
  270. package/dist/vue/WebcamTexture.vue_vue_type_script_setup_true_lang.js +8 -8
  271. package/dist/vue/ZoomBlur.vue_vue_type_script_setup_true_lang.js +8 -8
  272. package/dist/vue/engine/Shader.vue.d.ts +4 -4
  273. package/dist/vue/engine/Shader.vue.d.ts.map +1 -1
  274. package/package.json +3 -4
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
- Shader Effects License Agreement (v1.1)
1
+ Shader Effects License Agreement (v1.2)
2
2
 
3
- Effective Date: October 14, 2025
3
+ Effective Date: January 19, 2026
4
4
  Licensor: Shader Effects, Inc., a Delaware C-Corporation (“Shader Effects,” “we,” “us,” or “our”)
5
5
  Product: Shaders (including all npm packages, components, presets, generated code, and the design platform at shaders.com)
6
6
 
@@ -38,12 +38,23 @@ Use Shaders technology in SaaS products, design tools, or developer frameworks w
38
38
 
39
39
  Official open-source projects may use Shaders without a license key only for their promotional or documentation websites, provided Shaders is not a core or monetized part of the project.
40
40
 
41
- 4. Telemetry and License Verification
41
+ 4. Telemetry and Privacy
42
42
 
43
- Shaders may automatically transmit limited, anonymous usage data to Shader Effects servers for the purposes of performance tracking, reliability improvement, and license compliance.
44
- This data does not include personal information, but may include information such as the domain name, environment type (development or production), and version identifiers to verify that a valid license is in use.
43
+ Shaders may automatically collect and transmit limited, anonymous performance and usage data to Shader Effects' servers for the purposes of improving performance, reliability, and understanding how the library is used in production environments.
45
44
 
46
- By using Shaders, you consent to this limited data collection solely for these operational purposes.
45
+ Data Collected:
46
+ - Performance metrics (frame rate, render times, component usage)
47
+ - Domain name where Shaders is deployed (e.g., "example.com", without URL paths)
48
+ - Browser family (e.g., Chrome, Firefox, Safari)
49
+ - Device type (mobile, tablet, or desktop)
50
+ - Renderer type (WebGPU or WebGL)
51
+
52
+ This data does not include personal information, IP addresses, user identifiers, or any data that can identify individual end users. Telemetry is sampled at a low rate (typically 1-5% of sessions) and respects Do Not Track browser settings.
53
+
54
+ Opt-Out:
55
+ You may disable telemetry collection entirely by setting the `disableTelemetry` prop on the Shader component or by configuring your environment to respect user privacy preferences. Even when enabled, telemetry will not collect data from users with Do Not Track enabled in their browser.
56
+
57
+ By using Shaders, you acknowledge and consent to this limited data collection solely for these operational purposes.
47
58
 
48
59
  5. Right to Promote Usage
49
60
 
package/README.md CHANGED
@@ -1,73 +1,17 @@
1
1
  # Shaders
2
2
 
3
- ## Shader magic for modern frontends
4
-
5
3
  <img alt="image" src="https://shaders.com/og.png" />
6
4
 
7
5
  <p align="center">
8
6
  <a href="https://www.npmjs.com/package/shaders" rel="noopener noreferrer nofollow" ><img src="https://img.shields.io/npm/v/shaders?color=0368FF&label=version" alt="npm version"></a>
9
7
  <a href="https://www.npmjs.com/package/shaders" rel="noopener noreferrer nofollow" ><img src="https://img.shields.io/npm/dm/shaders?color=8D30FF&label=npm" alt="npm downloads per month"></a>
10
8
  <a target="_blank" rel="noopener noreferrer nofollow" href="https://www.jsdelivr.com/package/npm/shaders"><img alt="jsDelivr hits (npm)" src="https://img.shields.io/jsdelivr/npm/hm/shaders?logo=jsdeliver&color=FF4FBA"></a>
11
- <a href="https://img.shields.io/twitter/follow/npm_i_shaders" target="_blank"><img alt="X (formerly Twitter) Follow" src="https://img.shields.io/twitter/follow/npm_i_shaders"></a>
9
+ <a href="https://twitter.com/intent/user?screen_name=npm_i_shaders" target="_blank"><img alt="X (formerly Twitter) Follow" src="https://img.shields.io/twitter/follow/npm_i_shaders"></a>
12
10
  </p>
13
11
 
14
- ## Getting Started
15
-
16
- Shaders is available as component libraries for Vue, React & Svelte. No matter which framework you use, you always install `npm install shaders` and then import components from the framework-specific directory, such as `shaders/vue`.
17
-
18
- ```bash
19
- # Install
20
- npm install shaders
21
- ```
22
-
23
- <details>
24
- <summary>Usage (Vue)</summary>
25
-
26
- ```html
27
- <script>
28
- import { Shader, LinearGradient } from "shaders/vue"
29
- </script>
30
-
31
- <template>
32
- <Shader>
33
- <LinearGradient/>
34
- </Shader>
35
- </template>
36
- ```
37
-
38
- </details>
39
-
40
- <details>
41
- <summary>Usage (React)</summary>
42
-
43
- ```html
44
- <script>
45
- import { Shader, LinearGradient } from "shaders/react"
46
- </script>
47
-
48
- <template>
49
- <Shader>
50
- <LinearGradient/>
51
- </Shader>
52
- </template>
53
- ```
54
-
55
- </details>
56
-
57
- <details>
58
- <summary>Usage (Svelte)</summary>
59
-
60
- ```svelte
61
- <script>
62
- import { Shader, LinearGradient } from "shaders/svelte"
63
- </script>
64
-
65
- <Shader>
66
- <LinearGradient/>
67
- </Shader>
68
- ```
12
+ ## Shader Magic for Modern Frontends
69
13
 
70
- </details>
14
+ Shaders is the component system for creative WebGPU effects in the browser. It's available as component libraries for Vue / Nuxt, React / Next, Svelte & Solid.
71
15
 
72
16
  **Learn more and try the Design Editor at https://shaders.com**
73
17
 
@@ -75,6 +19,6 @@ npm install shaders
75
19
 
76
20
  Shaders © Shader Effects, Inc.
77
21
 
78
- Licensed under the Shader Effects License Agreement (v1.1).
22
+ Licensed under the [Shader Effects License Agreement](./LICENSE).
79
23
  You may use Shaders freely for non-production or educational use.
80
24
  A valid paid license is required for production deployment.
@@ -508,7 +508,6 @@ function updateUniformValue(uniform$1, newValue) {
508
508
  }
509
509
  } else uniform$1.uniform.value = newValue;
510
510
  }
511
- var hasLoggedLicenseInfo = false;
512
511
  var globalEventManager = (() => {
513
512
  let instanceCount = 0;
514
513
  const callbacks = /* @__PURE__ */ new Set();
@@ -569,24 +568,6 @@ var globalEventManager = (() => {
569
568
  };
570
569
  } };
571
570
  })();
572
- var isDevelopment = () => {
573
- try {
574
- {
575
- const { MODE, DEV } = {
576
- "DEV": false,
577
- "MODE": "production"
578
- };
579
- return DEV || MODE === "development";
580
- }
581
- if (typeof window !== "undefined" && window.location) {
582
- const hostname = window.location.hostname;
583
- return hostname === "localhost" || hostname === "127.0.0.1" || hostname.endsWith(".local") || hostname.includes("dev.") || hostname.startsWith("dev-");
584
- }
585
- return false;
586
- } catch (error) {
587
- return false;
588
- }
589
- };
590
571
  function shaderRenderer() {
591
572
  let canvasElement = null;
592
573
  let renderer;
@@ -1518,11 +1499,6 @@ function shaderRenderer() {
1518
1499
  if (initializationAbortController === localAbortController) initializationAbortController = null;
1519
1500
  }
1520
1501
  };
1521
- const showLicenseWarning = () => {
1522
- if (!isDevelopment() || hasLoggedLicenseInfo) return;
1523
- console.warn("Shaders is running in development mode. Please purchase a license at https://shaders.com to use it in production.");
1524
- hasLoggedLicenseInfo = true;
1525
- };
1526
1502
  const cleanup = () => {
1527
1503
  if (initializationAbortController) initializationAbortController.abort();
1528
1504
  if (resizeObserver) {
@@ -1606,7 +1582,6 @@ function shaderRenderer() {
1606
1582
  removeNode,
1607
1583
  updateUniformValue: updateUniformValue$1,
1608
1584
  updateNodeMetadata,
1609
- showLicenseWarning,
1610
1585
  isInitialized: () => isInitialized,
1611
1586
  startAnimation,
1612
1587
  stopAnimation,
@@ -112,7 +112,6 @@ export declare function shaderRenderer(): {
112
112
  removeNode: (id: string) => void;
113
113
  updateUniformValue: (nodeId: string, uniformName: string, value: any) => void;
114
114
  updateNodeMetadata: (nodeId: string, metadata: Partial<NodeMetadata>) => void;
115
- showLicenseWarning: () => void;
116
115
  isInitialized: () => boolean;
117
116
  startAnimation: () => void;
118
117
  stopAnimation: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,IAAI,EAMZ,MAAM,cAAc,CAAA;AAKrB,OAAO,EAAC,eAAe,EAAE,mBAAmB,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACvH,OAAO,EAAqB,gBAAgB,EAAC,MAAM,sBAAsB,CAAA;AAKzE;;GAEG;AACH,UAAU,QAAQ;IAEd;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAA;IAEV;;OAEG;IACH,aAAa,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,gBAAgB,EAAE,mBAAmB,CAAC,cAAc,CAAC,CAAA;IAErD;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAEvB;;OAEG;IACH,WAAW,EAAE,OAAO,CAAA;IAEpB;;;;OAIG;IACH,aAAa,EAAE,OAAO,CAAA;IAEtB;;OAEG;IACH,cAAc,EAAE,GAAG,CAAA;IAEnB;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAA;IAEtB;;OAEG;IACH,QAAQ,EAAE,WAAW,CAAA;IAErB;;;OAGG;IACH,gBAAgB,EAAE,eAAe,EAAE,CAAA;IAEnC;;;OAGG;IACH,qBAAqB,EAAE,cAAc,EAAE,CAAA;IAEvC;;;OAGG;IACH,oBAAoB,EAAE,cAAc,EAAE,CAAA;IAEtC;;;OAGG;IACH,eAAe,EAAE,cAAc,EAAE,CAAA;IAEjC;;;OAGG;IACH,iBAAiB,CAAC,EAAE;QAChB,OAAO,EAAE,GAAG,CAAA;QACZ,OAAO,EAAE,GAAG,CAAA;QACZ,QAAQ,EAAE,GAAG,CAAA;QACb,KAAK,EAAE,GAAG,CAAA;QACV,OAAO,EAAE,GAAG,CAAA;QACZ,OAAO,EAAE,GAAG,CAAA;QACZ,KAAK,EAAE,GAAG,CAAA;QACV,WAAW,EAAE,GAAG,CAAA;KACnB,CAAA;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAE/B;AAED;;GAEG;AACH,UAAU,YAAY;IAClB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC5B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC;AAED;;GAEG;AACH,UAAU,iBAAiB;IACvB,MAAM,EAAE,iBAAiB,CAAA;IACzB,yBAAyB,CAAC,EAAE,OAAO,CAAA;CACtC;AAyHD;;GAEG;AACH,wBAAgB,cAAc;wEAwmDG,iBAAiB;;uBAxrBpB,MAAM,oBAAoB,mBAAmB,CAAC,cAAc,CAAC,GAAG,IAAI,YAAY,MAAM,GAAG,IAAI,YAAY,YAAY,GAAG,IAAI,aAAY,WAAW,wBAA6B,mBAAmB,KAAG,IAAI;qBA4R5M,MAAM,KAAG,IAAI;iCA1ID,MAAM,eAAe,MAAM,SAAS,GAAG,KAAG,IAAI;iCAgC9C,MAAM,YAAY,OAAO,CAAC,YAAY,CAAC,KAAG,IAAI;8BAksBnD,IAAI;;0BA7UR,IAAI;yBAeL,IAAI;yBA/LE,OAAO,CAAC,IAAI,CAAC;+BAgKb,gBAAgB;;eAweoB,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC;;2BAlBrE,QAAQ,GAAG,OAAO,GAAG,IAAI;;;mCApiDnB,MAAM,KAAG,QAAQ,EAAE;oCAuCzC,IAAI,YACF,QAAQ,UACV,MAAM,kBACE,GAAG,CAAC,MAAM,CAAC,gBACb,IAAI,KACnB,IAAI;0CAuCK,IAAI,YACF,QAAQ,KACnB,IAAI;;;;EA8+CV"}
1
+ {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../src/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,IAAI,EAMZ,MAAM,cAAc,CAAA;AAKrB,OAAO,EAAC,eAAe,EAAE,mBAAmB,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACvH,OAAO,EAAqB,gBAAgB,EAAC,MAAM,sBAAsB,CAAA;AAKzE;;GAEG;AACH,UAAU,QAAQ;IAEd;;;OAGG;IACH,EAAE,EAAE,MAAM,CAAA;IAEV;;OAEG;IACH,aAAa,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,gBAAgB,EAAE,mBAAmB,CAAC,cAAc,CAAC,CAAA;IAErD;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IAEvB;;OAEG;IACH,WAAW,EAAE,OAAO,CAAA;IAEpB;;;;OAIG;IACH,aAAa,EAAE,OAAO,CAAA;IAEtB;;OAEG;IACH,cAAc,EAAE,GAAG,CAAA;IAEnB;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAA;IAEtB;;OAEG;IACH,QAAQ,EAAE,WAAW,CAAA;IAErB;;;OAGG;IACH,gBAAgB,EAAE,eAAe,EAAE,CAAA;IAEnC;;;OAGG;IACH,qBAAqB,EAAE,cAAc,EAAE,CAAA;IAEvC;;;OAGG;IACH,oBAAoB,EAAE,cAAc,EAAE,CAAA;IAEtC;;;OAGG;IACH,eAAe,EAAE,cAAc,EAAE,CAAA;IAEjC;;;OAGG;IACH,iBAAiB,CAAC,EAAE;QAChB,OAAO,EAAE,GAAG,CAAA;QACZ,OAAO,EAAE,GAAG,CAAA;QACZ,QAAQ,EAAE,GAAG,CAAA;QACb,KAAK,EAAE,GAAG,CAAA;QACV,OAAO,EAAE,GAAG,CAAA;QACZ,OAAO,EAAE,GAAG,CAAA;QACZ,KAAK,EAAE,GAAG,CAAA;QACV,WAAW,EAAE,GAAG,CAAA;KACnB,CAAA;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAE/B;AAED;;GAEG;AACH,UAAU,YAAY;IAClB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IAC5B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC;AAED;;GAEG;AACH,UAAU,iBAAiB;IACvB,MAAM,EAAE,iBAAiB,CAAA;IACzB,yBAAyB,CAAC,EAAE,OAAO,CAAA;CACtC;AA2FD;;GAEG;AACH,wBAAgB,cAAc;wEAwmDG,iBAAiB;;uBAxrBpB,MAAM,oBAAoB,mBAAmB,CAAC,cAAc,CAAC,GAAG,IAAI,YAAY,MAAM,GAAG,IAAI,YAAY,YAAY,GAAG,IAAI,aAAY,WAAW,wBAA6B,mBAAmB,KAAG,IAAI;qBA4R5M,MAAM,KAAG,IAAI;iCA1ID,MAAM,eAAe,MAAM,SAAS,GAAG,KAAG,IAAI;iCAgC9C,MAAM,YAAY,OAAO,CAAC,YAAY,CAAC,KAAG,IAAI;;0BAqXvD,IAAI;yBAeL,IAAI;yBA/LE,OAAO,CAAC,IAAI,CAAC;+BAgKb,gBAAgB;;eA4doB,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC;;2BAjBrE,QAAQ,GAAG,OAAO,GAAG,IAAI;;;mCAzhDnB,MAAM,KAAG,QAAQ,EAAE;oCAuCzC,IAAI,YACF,QAAQ,UACV,MAAM,kBACE,GAAG,CAAC,MAAM,CAAC,gBACb,IAAI,KACnB,IAAI;0CAuCK,IAAI,YACF,QAAQ,KACnB,IAAI;;;;EAk+CV"}
@@ -1 +1 @@
1
- {"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../../src/telemetry/collector.ts"],"names":[],"mappings":"AAKA,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,YAAY,CAAyB;IAC7C,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,OAAO,CAAiB;gBAEpB,QAAQ,EAAE,GAAG;IAKlB,IAAI,IAAI,IAAI;IAQb,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA8C5B,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,oBAAoB;IA0C5B,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,iBAAiB;YAwBX,aAAa;IAqB3B,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,mBAAmB;CAQ5B"}
1
+ {"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../../src/telemetry/collector.ts"],"names":[],"mappings":"AAKA,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,YAAY,CAAyB;IAC7C,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,OAAO,CAAiB;gBAEpB,QAAQ,EAAE,GAAG;IAKlB,IAAI,IAAI,IAAI;IAQb,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA4C5B,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,oBAAoB;IA0C5B,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,iBAAiB;YAwBX,aAAa;IA0B3B,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,eAAe;IAavB,OAAO,CAAC,mBAAmB;CAQ5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"environmentCollector.d.ts","sourceRoot":"","sources":["../../src/telemetry/environmentCollector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,wBAAgB,kBAAkB,IAAI,eAAe,CA2BpD"}
1
+ {"version":3,"file":"environmentCollector.d.ts","sourceRoot":"","sources":["../../src/telemetry/environmentCollector.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAyC9C,wBAAgB,kBAAkB,IAAI,eAAe,CAiBpD"}
@@ -1,4 +1,4 @@
1
- export declare function shouldCollectTelemetry(): boolean;
1
+ export declare function shouldCollectTelemetry(disableTelemetry?: boolean): boolean;
2
2
  export declare function isExternalUser(): boolean;
3
3
  export { TelemetryCollector } from './collector';
4
4
  export type { TelemetryPayload, PerformanceMetrics, ComponentInfo, RendererInfo, EnvironmentData } from './types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/telemetry/index.ts"],"names":[],"mappings":"AAEA,wBAAgB,sBAAsB,IAAI,OAAO,CAOhD;AAED,wBAAgB,cAAc,IAAI,OAAO,CAUxC;AAED,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/telemetry/index.ts"],"names":[],"mappings":"AAEA,wBAAgB,sBAAsB,CAAC,gBAAgB,GAAE,OAAe,GAAG,OAAO,CAYjF;AAED,wBAAgB,cAAc,IAAI,OAAO,CAUxC;AAED,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChD,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA"}
@@ -1,32 +1,35 @@
1
1
  const TELEMETRY_CONFIG = {
2
- samplingRate: .05,
3
- collectionDuration: 1e4,
4
- warmupDuration: 1e3,
2
+ samplingRate: .01,
3
+ collectionDuration: 5e3,
4
+ warmupDuration: 500,
5
5
  sampleInterval: 100,
6
6
  apiEndpoint: "https://shaders.com/api/telemetry"
7
7
  };
8
+ function detectBrowserFamily(userAgent) {
9
+ if (userAgent.includes("Edg/") || userAgent.includes("EdgiOS")) return "Edge";
10
+ if (userAgent.includes("OPR/") || userAgent.includes("Opera/")) return "Opera";
11
+ if (userAgent.includes("Chrome/") || userAgent.includes("CriOS")) return "Chrome";
12
+ if (userAgent.includes("Firefox/") || userAgent.includes("FxiOS")) return "Firefox";
13
+ if (userAgent.includes("Safari/") && !userAgent.includes("Chrome")) return "Safari";
14
+ return "Other";
15
+ }
16
+ function detectDeviceType(userAgent) {
17
+ if (/iPad|Tablet|PlayBook/i.test(userAgent)) return "tablet";
18
+ if (/Android/i.test(userAgent) && !/Mobile/i.test(userAgent)) return "tablet";
19
+ if (/Mobile|Android|webOS|iPhone|iPod|BlackBerry|IEMobile|Opera Mini/i.test(userAgent)) return "mobile";
20
+ return "desktop";
21
+ }
8
22
  function collectEnvironment() {
9
23
  if (typeof window === "undefined" || typeof navigator === "undefined") return {
10
24
  domain: "unknown",
11
- url: "unknown",
12
- userAgent: "unknown",
13
- viewport: {
14
- width: 0,
15
- height: 0
16
- },
17
- devicePixelRatio: 1,
18
- locale: "en-US"
25
+ browserFamily: "unknown",
26
+ deviceType: "unknown"
19
27
  };
28
+ const userAgent = navigator.userAgent;
20
29
  return {
21
30
  domain: window.location.hostname,
22
- url: window.location.pathname,
23
- userAgent: navigator.userAgent,
24
- viewport: {
25
- width: window.innerWidth,
26
- height: window.innerHeight
27
- },
28
- devicePixelRatio: window.devicePixelRatio,
29
- locale: navigator.language
31
+ browserFamily: detectBrowserFamily(userAgent),
32
+ deviceType: detectDeviceType(userAgent)
30
33
  };
31
34
  }
32
35
  var TelemetryCollector = class {
@@ -65,10 +68,10 @@ var TelemetryCollector = class {
65
68
  clearInterval(this.sampleInterval);
66
69
  this.sampleInterval = null;
67
70
  }
68
- if (!this.stopped && this.frameSamples.length >= 10) {
71
+ if (!this.stopped && this.frameSamples.length >= 50) {
69
72
  const payload = this.aggregateData();
70
73
  await this.sendTelemetry(payload);
71
- } else if (this.frameSamples.length < 10) console.log("[Telemetry] Insufficient samples collected, skipping send");
74
+ }
72
75
  } catch (error) {
73
76
  console.error("Telemetry collection error:", error);
74
77
  }
@@ -153,6 +156,7 @@ var TelemetryCollector = class {
153
156
  }
154
157
  }
155
158
  async sendTelemetry(payload) {
159
+ if (payload.performance.fps === 0 || payload.performance.frameTime.avg === 0) return;
156
160
  try {
157
161
  const response = await fetch(TELEMETRY_CONFIG.apiEndpoint, {
158
162
  method: "POST",
@@ -182,8 +186,9 @@ var TelemetryCollector = class {
182
186
  return sorted[Math.max(0, index)];
183
187
  }
184
188
  };
185
- function shouldCollectTelemetry() {
186
- if (typeof window !== "undefined" && window.location?.search?.includes("telemetry=true")) return true;
189
+ function shouldCollectTelemetry(disableTelemetry = false) {
190
+ if (disableTelemetry) return false;
191
+ if (typeof navigator !== "undefined" && navigator.doNotTrack === "1") return false;
187
192
  return Math.random() < TELEMETRY_CONFIG.samplingRate;
188
193
  }
189
194
  function isExternalUser() {
@@ -30,13 +30,7 @@ export interface RendererInfo {
30
30
  }
31
31
  export interface EnvironmentData {
32
32
  domain: string;
33
- url: string;
34
- userAgent: string;
35
- viewport: {
36
- width: number;
37
- height: number;
38
- };
39
- devicePixelRatio: number;
40
- locale: string;
33
+ browserFamily: string;
34
+ deviceType: string;
41
35
  }
42
36
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/telemetry/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,WAAW,EAAE,kBAAkB,CAAA;IAC/B,QAAQ,EAAE,YAAY,CAAA;IACtB,UAAU,EAAE,aAAa,EAAE,CAAA;IAC3B,WAAW,EAAE,eAAe,CAAA;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE;QACT,GAAG,EAAE,MAAM,CAAA;QACX,GAAG,EAAE,MAAM,CAAA;QACX,GAAG,EAAE,MAAM,CAAA;QACX,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;IACD,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAA;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,EAAE,MAAM,CAAA;KACf,CAAA;IACD,gBAAgB,EAAE,MAAM,CAAA;IACxB,MAAM,EAAE,MAAM,CAAA;CACf"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/telemetry/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,WAAW,EAAE,kBAAkB,CAAA;IAC/B,QAAQ,EAAE,YAAY,CAAA;IACtB,UAAU,EAAE,aAAa,EAAE,CAAA;IAC3B,WAAW,EAAE,eAAe,CAAA;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE;QACT,GAAG,EAAE,MAAM,CAAA;QACX,GAAG,EAAE,MAAM,CAAA;QACX,GAAG,EAAE,MAAM,CAAA;QACX,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;IACD,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAA;IACxB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;CACnB"}
@@ -1,4 +1,4 @@
1
- import { OmbreContext } from "./Shader.js";
1
+ import { ShaderContext } from "./Shader.js";
2
2
  import { useContext, useEffect, useMemo, useRef } from "react";
3
3
  import { createUniformsMap } from "../core/index.js";
4
4
  import { componentDefinition } from "../core/shaders/AngularBlur/index.js";
@@ -30,10 +30,10 @@ try {
30
30
  } catch (e) {
31
31
  console.warn("Error extracting default props:", e);
32
32
  }
33
- const OmbreComponent = (props) => {
34
- const context = useContext(OmbreContext);
33
+ const ShaderComponent = (props) => {
34
+ const context = useContext(ShaderContext);
35
35
  if (!context) throw new Error("Shader components must be used inside an <Shader> component or another shader component");
36
- const { ombreParentId: parentId, ombreNodeRegister: parentRegister, ombreUniformUpdate: parentUniformUpdate, ombreMetadataUpdate: parentMetadataUpdate } = context;
36
+ const { shaderParentId: parentId, shaderNodeRegister: parentRegister, shaderUniformUpdate: parentUniformUpdate, shaderMetadataUpdate: parentMetadataUpdate } = context;
37
37
  const instanceId = useMemo(() => {
38
38
  return props.id || `${componentDefinition.name.toLowerCase()}_${Math.random().toString(36).substring(7)}`;
39
39
  }, [props.id]);
@@ -49,7 +49,7 @@ const OmbreComponent = (props) => {
49
49
  const childContextValue = useMemo(() => {
50
50
  return {
51
51
  ...context,
52
- ombreParentId: instanceId
52
+ shaderParentId: instanceId
53
53
  };
54
54
  }, [context, instanceId]);
55
55
  useEffect(() => {
@@ -135,10 +135,10 @@ const OmbreComponent = (props) => {
135
135
  if (props.ref && typeof props.ref === "function") try {
136
136
  props.ref(null);
137
137
  } catch (e) {}
138
- return /* @__PURE__ */ jsx(OmbreContext.Provider, {
138
+ return /* @__PURE__ */ jsx(ShaderContext.Provider, {
139
139
  value: childContextValue,
140
140
  children: props.children
141
141
  });
142
142
  };
143
- var AngularBlur_default = OmbreComponent;
143
+ var AngularBlur_default = ShaderComponent;
144
144
  export { AngularBlur_default as default };
@@ -1,4 +1,4 @@
1
- import { OmbreContext } from "./Shader.js";
1
+ import { ShaderContext } from "./Shader.js";
2
2
  import { useContext, useEffect, useMemo, useRef } from "react";
3
3
  import { createUniformsMap } from "../core/index.js";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -30,10 +30,10 @@ try {
30
30
  } catch (e) {
31
31
  console.warn("Error extracting default props:", e);
32
32
  }
33
- const OmbreComponent = (props) => {
34
- const context = useContext(OmbreContext);
33
+ const ShaderComponent = (props) => {
34
+ const context = useContext(ShaderContext);
35
35
  if (!context) throw new Error("Shader components must be used inside an <Shader> component or another shader component");
36
- const { ombreParentId: parentId, ombreNodeRegister: parentRegister, ombreUniformUpdate: parentUniformUpdate, ombreMetadataUpdate: parentMetadataUpdate } = context;
36
+ const { shaderParentId: parentId, shaderNodeRegister: parentRegister, shaderUniformUpdate: parentUniformUpdate, shaderMetadataUpdate: parentMetadataUpdate } = context;
37
37
  const instanceId = useMemo(() => {
38
38
  return props.id || `${componentDefinition.name.toLowerCase()}_${Math.random().toString(36).substring(7)}`;
39
39
  }, [props.id]);
@@ -49,7 +49,7 @@ const OmbreComponent = (props) => {
49
49
  const childContextValue = useMemo(() => {
50
50
  return {
51
51
  ...context,
52
- ombreParentId: instanceId
52
+ shaderParentId: instanceId
53
53
  };
54
54
  }, [context, instanceId]);
55
55
  useEffect(() => {
@@ -135,10 +135,10 @@ const OmbreComponent = (props) => {
135
135
  if (props.ref && typeof props.ref === "function") try {
136
136
  props.ref(null);
137
137
  } catch (e) {}
138
- return /* @__PURE__ */ jsx(OmbreContext.Provider, {
138
+ return /* @__PURE__ */ jsx(ShaderContext.Provider, {
139
139
  value: childContextValue,
140
140
  children: props.children
141
141
  });
142
142
  };
143
- var Ascii_default = OmbreComponent;
143
+ var Ascii_default = ShaderComponent;
144
144
  export { Ascii_default as default };
@@ -1,4 +1,4 @@
1
- import { OmbreContext } from "./Shader.js";
1
+ import { ShaderContext } from "./Shader.js";
2
2
  import { useContext, useEffect, useMemo, useRef } from "react";
3
3
  import { createUniformsMap } from "../core/index.js";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -30,10 +30,10 @@ try {
30
30
  } catch (e) {
31
31
  console.warn("Error extracting default props:", e);
32
32
  }
33
- const OmbreComponent = (props) => {
34
- const context = useContext(OmbreContext);
33
+ const ShaderComponent = (props) => {
34
+ const context = useContext(ShaderContext);
35
35
  if (!context) throw new Error("Shader components must be used inside an <Shader> component or another shader component");
36
- const { ombreParentId: parentId, ombreNodeRegister: parentRegister, ombreUniformUpdate: parentUniformUpdate, ombreMetadataUpdate: parentMetadataUpdate } = context;
36
+ const { shaderParentId: parentId, shaderNodeRegister: parentRegister, shaderUniformUpdate: parentUniformUpdate, shaderMetadataUpdate: parentMetadataUpdate } = context;
37
37
  const instanceId = useMemo(() => {
38
38
  return props.id || `${componentDefinition.name.toLowerCase()}_${Math.random().toString(36).substring(7)}`;
39
39
  }, [props.id]);
@@ -49,7 +49,7 @@ const OmbreComponent = (props) => {
49
49
  const childContextValue = useMemo(() => {
50
50
  return {
51
51
  ...context,
52
- ombreParentId: instanceId
52
+ shaderParentId: instanceId
53
53
  };
54
54
  }, [context, instanceId]);
55
55
  useEffect(() => {
@@ -135,10 +135,10 @@ const OmbreComponent = (props) => {
135
135
  if (props.ref && typeof props.ref === "function") try {
136
136
  props.ref(null);
137
137
  } catch (e) {}
138
- return /* @__PURE__ */ jsx(OmbreContext.Provider, {
138
+ return /* @__PURE__ */ jsx(ShaderContext.Provider, {
139
139
  value: childContextValue,
140
140
  children: props.children
141
141
  });
142
142
  };
143
- var Beam_default = OmbreComponent;
143
+ var Beam_default = ShaderComponent;
144
144
  export { Beam_default as default };
@@ -1,4 +1,4 @@
1
- import { OmbreContext } from "./Shader.js";
1
+ import { ShaderContext } from "./Shader.js";
2
2
  import { useContext, useEffect, useMemo, useRef } from "react";
3
3
  import { createUniformsMap } from "../core/index.js";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -30,10 +30,10 @@ try {
30
30
  } catch (e) {
31
31
  console.warn("Error extracting default props:", e);
32
32
  }
33
- const OmbreComponent = (props) => {
34
- const context = useContext(OmbreContext);
33
+ const ShaderComponent = (props) => {
34
+ const context = useContext(ShaderContext);
35
35
  if (!context) throw new Error("Shader components must be used inside an <Shader> component or another shader component");
36
- const { ombreParentId: parentId, ombreNodeRegister: parentRegister, ombreUniformUpdate: parentUniformUpdate, ombreMetadataUpdate: parentMetadataUpdate } = context;
36
+ const { shaderParentId: parentId, shaderNodeRegister: parentRegister, shaderUniformUpdate: parentUniformUpdate, shaderMetadataUpdate: parentMetadataUpdate } = context;
37
37
  const instanceId = useMemo(() => {
38
38
  return props.id || `${componentDefinition.name.toLowerCase()}_${Math.random().toString(36).substring(7)}`;
39
39
  }, [props.id]);
@@ -49,7 +49,7 @@ const OmbreComponent = (props) => {
49
49
  const childContextValue = useMemo(() => {
50
50
  return {
51
51
  ...context,
52
- ombreParentId: instanceId
52
+ shaderParentId: instanceId
53
53
  };
54
54
  }, [context, instanceId]);
55
55
  useEffect(() => {
@@ -135,10 +135,10 @@ const OmbreComponent = (props) => {
135
135
  if (props.ref && typeof props.ref === "function") try {
136
136
  props.ref(null);
137
137
  } catch (e) {}
138
- return /* @__PURE__ */ jsx(OmbreContext.Provider, {
138
+ return /* @__PURE__ */ jsx(ShaderContext.Provider, {
139
139
  value: childContextValue,
140
140
  children: props.children
141
141
  });
142
142
  };
143
- var Blob_default = OmbreComponent;
143
+ var Blob_default = ShaderComponent;
144
144
  export { Blob_default as default };
@@ -1,4 +1,4 @@
1
- import { OmbreContext } from "./Shader.js";
1
+ import { ShaderContext } from "./Shader.js";
2
2
  import { useContext, useEffect, useMemo, useRef } from "react";
3
3
  import { createUniformsMap } from "../core/index.js";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -30,10 +30,10 @@ try {
30
30
  } catch (e) {
31
31
  console.warn("Error extracting default props:", e);
32
32
  }
33
- const OmbreComponent = (props) => {
34
- const context = useContext(OmbreContext);
33
+ const ShaderComponent = (props) => {
34
+ const context = useContext(ShaderContext);
35
35
  if (!context) throw new Error("Shader components must be used inside an <Shader> component or another shader component");
36
- const { ombreParentId: parentId, ombreNodeRegister: parentRegister, ombreUniformUpdate: parentUniformUpdate, ombreMetadataUpdate: parentMetadataUpdate } = context;
36
+ const { shaderParentId: parentId, shaderNodeRegister: parentRegister, shaderUniformUpdate: parentUniformUpdate, shaderMetadataUpdate: parentMetadataUpdate } = context;
37
37
  const instanceId = useMemo(() => {
38
38
  return props.id || `${componentDefinition.name.toLowerCase()}_${Math.random().toString(36).substring(7)}`;
39
39
  }, [props.id]);
@@ -49,7 +49,7 @@ const OmbreComponent = (props) => {
49
49
  const childContextValue = useMemo(() => {
50
50
  return {
51
51
  ...context,
52
- ombreParentId: instanceId
52
+ shaderParentId: instanceId
53
53
  };
54
54
  }, [context, instanceId]);
55
55
  useEffect(() => {
@@ -135,10 +135,10 @@ const OmbreComponent = (props) => {
135
135
  if (props.ref && typeof props.ref === "function") try {
136
136
  props.ref(null);
137
137
  } catch (e) {}
138
- return /* @__PURE__ */ jsx(OmbreContext.Provider, {
138
+ return /* @__PURE__ */ jsx(ShaderContext.Provider, {
139
139
  value: childContextValue,
140
140
  children: props.children
141
141
  });
142
142
  };
143
- var Blur_default = OmbreComponent;
143
+ var Blur_default = ShaderComponent;
144
144
  export { Blur_default as default };
@@ -1,4 +1,4 @@
1
- import { OmbreContext } from "./Shader.js";
1
+ import { ShaderContext } from "./Shader.js";
2
2
  import { useContext, useEffect, useMemo, useRef } from "react";
3
3
  import { createUniformsMap } from "../core/index.js";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -30,10 +30,10 @@ try {
30
30
  } catch (e) {
31
31
  console.warn("Error extracting default props:", e);
32
32
  }
33
- const OmbreComponent = (props) => {
34
- const context = useContext(OmbreContext);
33
+ const ShaderComponent = (props) => {
34
+ const context = useContext(ShaderContext);
35
35
  if (!context) throw new Error("Shader components must be used inside an <Shader> component or another shader component");
36
- const { ombreParentId: parentId, ombreNodeRegister: parentRegister, ombreUniformUpdate: parentUniformUpdate, ombreMetadataUpdate: parentMetadataUpdate } = context;
36
+ const { shaderParentId: parentId, shaderNodeRegister: parentRegister, shaderUniformUpdate: parentUniformUpdate, shaderMetadataUpdate: parentMetadataUpdate } = context;
37
37
  const instanceId = useMemo(() => {
38
38
  return props.id || `${componentDefinition.name.toLowerCase()}_${Math.random().toString(36).substring(7)}`;
39
39
  }, [props.id]);
@@ -49,7 +49,7 @@ const OmbreComponent = (props) => {
49
49
  const childContextValue = useMemo(() => {
50
50
  return {
51
51
  ...context,
52
- ombreParentId: instanceId
52
+ shaderParentId: instanceId
53
53
  };
54
54
  }, [context, instanceId]);
55
55
  useEffect(() => {
@@ -135,10 +135,10 @@ const OmbreComponent = (props) => {
135
135
  if (props.ref && typeof props.ref === "function") try {
136
136
  props.ref(null);
137
137
  } catch (e) {}
138
- return /* @__PURE__ */ jsx(OmbreContext.Provider, {
138
+ return /* @__PURE__ */ jsx(ShaderContext.Provider, {
139
139
  value: childContextValue,
140
140
  children: props.children
141
141
  });
142
142
  };
143
- var BrightnessContrast_default = OmbreComponent;
143
+ var BrightnessContrast_default = ShaderComponent;
144
144
  export { BrightnessContrast_default as default };
@@ -1,4 +1,4 @@
1
- import { OmbreContext } from "./Shader.js";
1
+ import { ShaderContext } from "./Shader.js";
2
2
  import { useContext, useEffect, useMemo, useRef } from "react";
3
3
  import { createUniformsMap } from "../core/index.js";
4
4
  import { jsx } from "react/jsx-runtime";
@@ -30,10 +30,10 @@ try {
30
30
  } catch (e) {
31
31
  console.warn("Error extracting default props:", e);
32
32
  }
33
- const OmbreComponent = (props) => {
34
- const context = useContext(OmbreContext);
33
+ const ShaderComponent = (props) => {
34
+ const context = useContext(ShaderContext);
35
35
  if (!context) throw new Error("Shader components must be used inside an <Shader> component or another shader component");
36
- const { ombreParentId: parentId, ombreNodeRegister: parentRegister, ombreUniformUpdate: parentUniformUpdate, ombreMetadataUpdate: parentMetadataUpdate } = context;
36
+ const { shaderParentId: parentId, shaderNodeRegister: parentRegister, shaderUniformUpdate: parentUniformUpdate, shaderMetadataUpdate: parentMetadataUpdate } = context;
37
37
  const instanceId = useMemo(() => {
38
38
  return props.id || `${componentDefinition.name.toLowerCase()}_${Math.random().toString(36).substring(7)}`;
39
39
  }, [props.id]);
@@ -49,7 +49,7 @@ const OmbreComponent = (props) => {
49
49
  const childContextValue = useMemo(() => {
50
50
  return {
51
51
  ...context,
52
- ombreParentId: instanceId
52
+ shaderParentId: instanceId
53
53
  };
54
54
  }, [context, instanceId]);
55
55
  useEffect(() => {
@@ -135,10 +135,10 @@ const OmbreComponent = (props) => {
135
135
  if (props.ref && typeof props.ref === "function") try {
136
136
  props.ref(null);
137
137
  } catch (e) {}
138
- return /* @__PURE__ */ jsx(OmbreContext.Provider, {
138
+ return /* @__PURE__ */ jsx(ShaderContext.Provider, {
139
139
  value: childContextValue,
140
140
  children: props.children
141
141
  });
142
142
  };
143
- var Bulge_default = OmbreComponent;
143
+ var Bulge_default = ShaderComponent;
144
144
  export { Bulge_default as default };