shaders 2.3.52 → 2.3.54

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 (160) hide show
  1. package/dist/core/{Blob-BgN4aVOR.js → Blob-CunyZ0A6.js} +4 -7
  2. package/dist/core/CursorRipples-Dn_rE8nA.js +177 -0
  3. package/dist/core/{VideoTexture-CH9n_1hI.js → VideoTexture-DfsNWCXk.js} +32 -17
  4. package/dist/core/{WebcamTexture-wlrwZXeq.js → WebcamTexture-Cxppkhiu.js} +35 -18
  5. package/dist/core/browser-Dcr7w1AA.js +6 -0
  6. package/dist/core/registry.js +118 -115
  7. package/dist/core/shaderRegistry.d.ts.map +1 -1
  8. package/dist/core/shaders/Blob/index.d.ts.map +1 -1
  9. package/dist/core/shaders/Blob/index.js +1 -1
  10. package/dist/core/shaders/CursorRipples/index.d.ts +42 -0
  11. package/dist/core/shaders/CursorRipples/index.d.ts.map +1 -0
  12. package/dist/core/shaders/CursorRipples/index.js +4 -0
  13. package/dist/core/shaders/CursorTrail/index.js +1 -1
  14. package/dist/core/shaders/DiffuseBlur/index.js +1 -1
  15. package/dist/core/shaders/Dither/index.js +1 -1
  16. package/dist/core/shaders/DotGrid/index.js +1 -1
  17. package/dist/core/shaders/Duotone/index.js +1 -1
  18. package/dist/core/shaders/FilmGrain/index.js +1 -1
  19. package/dist/core/shaders/FloatingParticles/index.js +1 -1
  20. package/dist/core/shaders/FlowField/index.js +1 -1
  21. package/dist/core/shaders/GlassTiles/index.js +1 -1
  22. package/dist/core/shaders/Glitch/index.js +1 -1
  23. package/dist/core/shaders/Glow/index.js +1 -1
  24. package/dist/core/shaders/Godrays/index.js +1 -1
  25. package/dist/core/shaders/Grayscale/index.js +1 -1
  26. package/dist/core/shaders/Grid/index.js +1 -1
  27. package/dist/core/shaders/GridDistortion/index.js +1 -1
  28. package/dist/core/shaders/Group/index.js +1 -1
  29. package/dist/core/shaders/Halftone/index.js +1 -1
  30. package/dist/core/shaders/HueShift/index.js +1 -1
  31. package/dist/core/shaders/ImageTexture/index.js +1 -1
  32. package/dist/core/shaders/Invert/index.js +1 -1
  33. package/dist/core/shaders/Kaleidoscope/index.js +1 -1
  34. package/dist/core/shaders/LensFlare/index.js +1 -1
  35. package/dist/core/shaders/LinearBlur/index.js +1 -1
  36. package/dist/core/shaders/LinearGradient/index.js +1 -1
  37. package/dist/core/shaders/Liquify/index.js +1 -1
  38. package/dist/core/shaders/Mirror/index.js +1 -1
  39. package/dist/core/shaders/Perspective/index.js +1 -1
  40. package/dist/core/shaders/Pixelate/index.js +1 -1
  41. package/dist/core/shaders/Plasma/index.js +1 -1
  42. package/dist/core/shaders/PolarCoordinates/index.js +1 -1
  43. package/dist/core/shaders/Posterize/index.js +1 -1
  44. package/dist/core/shaders/ProgressiveBlur/index.js +1 -1
  45. package/dist/core/shaders/RadialGradient/index.js +1 -1
  46. package/dist/core/shaders/RectangularCoordinates/index.js +1 -1
  47. package/dist/core/shaders/Ripples/index.js +1 -1
  48. package/dist/core/shaders/Saturation/index.js +1 -1
  49. package/dist/core/shaders/Sharpness/index.js +1 -1
  50. package/dist/core/shaders/Shatter/index.js +1 -1
  51. package/dist/core/shaders/SimplexNoise/index.js +1 -1
  52. package/dist/core/shaders/SineWave/index.js +1 -1
  53. package/dist/core/shaders/SolidColor/index.js +1 -1
  54. package/dist/core/shaders/Spherize/index.js +1 -1
  55. package/dist/core/shaders/Spiral/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/Tritone/index.js +1 -1
  64. package/dist/core/shaders/Twirl/index.js +1 -1
  65. package/dist/core/shaders/Vibrance/index.js +1 -1
  66. package/dist/core/shaders/VideoTexture/index.d.ts.map +1 -1
  67. package/dist/core/shaders/VideoTexture/index.js +2 -1
  68. package/dist/core/shaders/WaveDistortion/index.js +1 -1
  69. package/dist/core/shaders/WebcamTexture/index.d.ts.map +1 -1
  70. package/dist/core/shaders/WebcamTexture/index.js +2 -1
  71. package/dist/core/shaders/ZoomBlur/index.js +1 -1
  72. package/dist/core/utilities/browser.d.ts +2 -0
  73. package/dist/core/utilities/browser.d.ts.map +1 -0
  74. package/dist/react/CursorRipples.js +164 -0
  75. package/dist/react/components/CursorRipples.d.ts +31 -0
  76. package/dist/react/components/CursorRipples.d.ts.map +1 -0
  77. package/dist/react/index.d.ts +1 -0
  78. package/dist/react/index.d.ts.map +1 -1
  79. package/dist/react/index.js +2 -1
  80. package/dist/react/utils/generatePresetCode.d.ts.map +1 -1
  81. package/dist/react/utils/generatePresetCode.js +10 -0
  82. package/dist/registry.js +168 -0
  83. package/dist/solid/components/CursorRipples.d.ts +28 -0
  84. package/dist/solid/components/CursorRipples.d.ts.map +1 -0
  85. package/dist/solid/components/CursorRipples.js +168 -0
  86. package/dist/solid/index.d.ts +1 -0
  87. package/dist/solid/index.d.ts.map +1 -1
  88. package/dist/solid/index.js +118 -116
  89. package/dist/solid/utils/generatePresetCode.d.ts.map +1 -1
  90. package/dist/solid/utils/generatePresetCode.js +10 -0
  91. package/dist/svelte/components/CursorRipples.svelte.d.ts +19 -0
  92. package/dist/svelte/{generatePresetCode-DXODN9t6.js → generatePresetCode-DN-iUvZN.js} +10 -0
  93. package/dist/svelte/index.d.ts +1 -0
  94. package/dist/svelte/index.js +392 -262
  95. package/dist/svelte/utils/generatePresetCode.js +1 -1
  96. package/dist/vue/CursorRipples.js +3 -0
  97. package/dist/vue/CursorRipples.vue_vue_type_script_setup_true_lang.js +148 -0
  98. package/dist/vue/components/CursorRipples.vue.d.ts +54 -0
  99. package/dist/vue/components/CursorRipples.vue.d.ts.map +1 -0
  100. package/dist/vue/index.d.ts +1 -0
  101. package/dist/vue/index.d.ts.map +1 -1
  102. package/dist/vue/index.js +2 -1
  103. package/dist/vue/utils/generatePresetCode.d.ts.map +1 -1
  104. package/dist/vue/utils/generatePresetCode.js +10 -0
  105. package/package.json +10 -2
  106. /package/dist/core/{CursorTrail-DpegyvgZ.js → CursorTrail-DD4YxAqo.js} +0 -0
  107. /package/dist/core/{DiffuseBlur-BXcJHOEK.js → DiffuseBlur-GlibDd8O.js} +0 -0
  108. /package/dist/core/{Dither-BKUz66yF.js → Dither-BOWyA2dp.js} +0 -0
  109. /package/dist/core/{DotGrid-CQ3Bqk7F.js → DotGrid-Cm-wz6WU.js} +0 -0
  110. /package/dist/core/{Duotone-BW1JYEPc.js → Duotone-C8mRw_1e.js} +0 -0
  111. /package/dist/core/{FilmGrain-GEWzNIxN.js → FilmGrain-BzD2zoUK.js} +0 -0
  112. /package/dist/core/{FloatingParticles--9Vfk8l7.js → FloatingParticles-GkVY1twT.js} +0 -0
  113. /package/dist/core/{FlowField-cpaUwFHC.js → FlowField-S_LXjhaN.js} +0 -0
  114. /package/dist/core/{GlassTiles-BdeSNj7g.js → GlassTiles--hbefQlc.js} +0 -0
  115. /package/dist/core/{Glitch-CROTuIoh.js → Glitch-lbgQYebN.js} +0 -0
  116. /package/dist/core/{Glow-DQDMXgcr.js → Glow-DM9zbhbr.js} +0 -0
  117. /package/dist/core/{Godrays-ByIS3bRa.js → Godrays-DVo1ikUR.js} +0 -0
  118. /package/dist/core/{Grayscale-DpKuVrqO.js → Grayscale-CRYK8foe.js} +0 -0
  119. /package/dist/core/{Grid-CkcYMWZi.js → Grid-BmYSb6Ur.js} +0 -0
  120. /package/dist/core/{GridDistortion-CATS8be1.js → GridDistortion-PNU8pi2I.js} +0 -0
  121. /package/dist/core/{Group-DqEcpVau.js → Group-D-QMn-Co.js} +0 -0
  122. /package/dist/core/{Halftone-DPnEJWAR.js → Halftone-BlY2LuT8.js} +0 -0
  123. /package/dist/core/{HueShift-BuAL_IUD.js → HueShift-p4t6HfqE.js} +0 -0
  124. /package/dist/core/{ImageTexture-BxUmKJDM.js → ImageTexture-BAOtuVAy.js} +0 -0
  125. /package/dist/core/{Invert-CnrYMYHq.js → Invert-oYct5uwC.js} +0 -0
  126. /package/dist/core/{Kaleidoscope-w7bcRTGG.js → Kaleidoscope-BXKsOJl2.js} +0 -0
  127. /package/dist/core/{LensFlare-D42C5m1g.js → LensFlare-BWl8PWjv.js} +0 -0
  128. /package/dist/core/{LinearBlur-PB7AuAdN.js → LinearBlur-gV1sIMuQ.js} +0 -0
  129. /package/dist/core/{LinearGradient-xd6zdc9k.js → LinearGradient-C5kz9RSs.js} +0 -0
  130. /package/dist/core/{Liquify-BfUbY9Aa.js → Liquify-CtUvuV0S.js} +0 -0
  131. /package/dist/core/{Mirror-CBuDbabq.js → Mirror-C3Bn9m7T.js} +0 -0
  132. /package/dist/core/{Perspective-BWEoTtAq.js → Perspective-NsMXVWAS.js} +0 -0
  133. /package/dist/core/{Pixelate-C1kcXBSy.js → Pixelate-C-LbtIjf.js} +0 -0
  134. /package/dist/core/{Plasma-BaKvTyBi.js → Plasma-Dr516u2H.js} +0 -0
  135. /package/dist/core/{PolarCoordinates-tXYdB1hR.js → PolarCoordinates-HVxz9oX-.js} +0 -0
  136. /package/dist/core/{Posterize-D4f1xM4m.js → Posterize-DbPe3f5d.js} +0 -0
  137. /package/dist/core/{ProgressiveBlur-CmBI0c7e.js → ProgressiveBlur-Cf2pKf8U.js} +0 -0
  138. /package/dist/core/{RadialGradient-BOWu2cE6.js → RadialGradient-Bel2cjwV.js} +0 -0
  139. /package/dist/core/{RectangularCoordinates-C2KYwree.js → RectangularCoordinates-BfeH7Mp6.js} +0 -0
  140. /package/dist/core/{Ripples-C3rm4Nv6.js → Ripples-DBqbjqb_.js} +0 -0
  141. /package/dist/core/{Saturation-Bw3ToVIJ.js → Saturation-4L5KnzYg.js} +0 -0
  142. /package/dist/core/{Sharpness-Dm4dZVlk.js → Sharpness-C5h9h3NY.js} +0 -0
  143. /package/dist/core/{Shatter-C5oF85Mn.js → Shatter-BDTHZrbz.js} +0 -0
  144. /package/dist/core/{SimplexNoise-CzJ9JuBO.js → SimplexNoise-DU-QPbwp.js} +0 -0
  145. /package/dist/core/{SineWave-DMogWzg5.js → SineWave-CsoVJf9C.js} +0 -0
  146. /package/dist/core/{SolidColor-CmqDLEvX.js → SolidColor-BOK2t0JT.js} +0 -0
  147. /package/dist/core/{Spherize-BmA6-b8n.js → Spherize-BxUTtFAg.js} +0 -0
  148. /package/dist/core/{Spiral-DmYzx8BO.js → Spiral-DVURsiiQ.js} +0 -0
  149. /package/dist/core/{Strands-CmEblLfF.js → Strands-C2l4JaUt.js} +0 -0
  150. /package/dist/core/{Stretch-szy_xiYc.js → Stretch-uSJDtqi2.js} +0 -0
  151. /package/dist/core/{Stripes-Bze5bkdm.js → Stripes-IFl3of9w.js} +0 -0
  152. /package/dist/core/{StudioBackground-Ci26l_Xb.js → StudioBackground-DbBGv5fk.js} +0 -0
  153. /package/dist/core/{Swirl-BUKxPesY.js → Swirl-C16tmwEg.js} +0 -0
  154. /package/dist/core/{TiltShift-YxZeQ5Et.js → TiltShift-C5t3YMVT.js} +0 -0
  155. /package/dist/core/{Tint-Bss3hfZG.js → Tint-VTnDmiKF.js} +0 -0
  156. /package/dist/core/{Tritone-CVr6_qy3.js → Tritone-v6z_O967.js} +0 -0
  157. /package/dist/core/{Twirl-CKwGdb3_.js → Twirl-BWpsT8iI.js} +0 -0
  158. /package/dist/core/{Vibrance-BiW7HP94.js → Vibrance-C_DSuzwf.js} +0 -0
  159. /package/dist/core/{WaveDistortion-BYmLNaT1.js → WaveDistortion-xj8fjAf_.js} +0 -0
  160. /package/dist/core/{ZoomBlur-BtGAMd_0.js → ZoomBlur-BePhHTgF.js} +0 -0
@@ -0,0 +1,164 @@
1
+ import { ShaderContext } from "./Shader.js";
2
+ import { useContext, useEffect, useMemo, useRef } from "react";
3
+ import { createUniformsMap } from "../core/index.js";
4
+ import { jsx } from "react/jsx-runtime";
5
+ import { componentDefinition } from "../core/shaders/CursorRipples/index.js";
6
+ function computeEffectiveProps(props, defaultProps$1) {
7
+ let baseProps = { ...defaultProps$1 };
8
+ for (const [key, value] of Object.entries(props)) if (key !== "children" && key !== "ref" && value !== void 0) baseProps[key] = value;
9
+ return baseProps;
10
+ }
11
+ var MARKER_STYLE = { display: "contents" };
12
+ var DEFAULT_TRANSFORM = {
13
+ offsetX: 0,
14
+ offsetY: 0,
15
+ rotation: 0,
16
+ scale: 1,
17
+ anchorX: .5,
18
+ anchorY: .5,
19
+ edges: "transparent"
20
+ };
21
+ var defaultProps = {
22
+ blendMode: "normal",
23
+ visible: true
24
+ };
25
+ try {
26
+ if (componentDefinition && componentDefinition.props) Object.entries(componentDefinition.props).forEach(([key, config]) => {
27
+ const propConfig = config;
28
+ if (propConfig && typeof propConfig === "object" && "default" in propConfig) defaultProps[key] = propConfig.default;
29
+ });
30
+ } catch (e) {
31
+ console.warn("Error extracting default props:", e);
32
+ }
33
+ const ShaderComponent = (props) => {
34
+ const context = useContext(ShaderContext);
35
+ if (!context) throw new Error("Shader components must be used inside an <Shader> component or another shader component");
36
+ const { shaderParentId: parentId, shaderNodeRegister: parentRegister, shaderUniformUpdate: parentUniformUpdate, shaderMetadataUpdate: parentMetadataUpdate } = context;
37
+ const instanceId = useMemo(() => {
38
+ return props.id || Math.random().toString(36).substring(2, 10);
39
+ }, [props.id]);
40
+ const effectiveProps = useMemo(() => {
41
+ return computeEffectiveProps(props, defaultProps);
42
+ }, [props]);
43
+ const effectiveTransform = useMemo(() => ({
44
+ ...DEFAULT_TRANSFORM,
45
+ ...props.transform
46
+ }), [props.transform]);
47
+ const markerRef = useRef(null);
48
+ const detectedOrderRef = useRef(void 0);
49
+ const uniformsRef = useRef(null);
50
+ if (uniformsRef.current === null) uniformsRef.current = createUniformsMap(componentDefinition, effectiveProps, instanceId);
51
+ const childContextValue = useMemo(() => {
52
+ return {
53
+ ...context,
54
+ shaderParentId: instanceId
55
+ };
56
+ }, [context, instanceId]);
57
+ useEffect(() => {
58
+ if (!uniformsRef.current) return;
59
+ try {
60
+ const metadata = {
61
+ blendMode: props.blendMode || "normal",
62
+ opacity: props.opacity,
63
+ visible: props.visible === false ? false : true,
64
+ id: props.id,
65
+ mask: props.maskSource ? {
66
+ source: props.maskSource,
67
+ type: props.maskType || "alpha"
68
+ } : void 0,
69
+ renderOrder: props.renderOrder ?? detectedOrderRef.current,
70
+ transform: effectiveTransform
71
+ };
72
+ parentRegister(instanceId, componentDefinition.fragmentNode, parentId, metadata, uniformsRef.current, componentDefinition);
73
+ return () => {
74
+ parentRegister(instanceId, null, null, null, null);
75
+ };
76
+ } catch (error) {
77
+ console.error("Error registering shader node:", error);
78
+ return () => {};
79
+ }
80
+ }, [
81
+ instanceId,
82
+ parentId,
83
+ parentRegister
84
+ ]);
85
+ useEffect(() => {
86
+ if (props.renderOrder === void 0 && markerRef.current) {
87
+ const parent = markerRef.current.parentElement;
88
+ if (parent) {
89
+ const siblings = parent.querySelectorAll(":scope > [data-shader-id]");
90
+ const position = Array.from(siblings).indexOf(markerRef.current);
91
+ if (position >= 0) {
92
+ detectedOrderRef.current = position;
93
+ parentMetadataUpdate(instanceId, { renderOrder: position });
94
+ }
95
+ }
96
+ }
97
+ }, []);
98
+ const prevPropsRef = useRef({});
99
+ useEffect(() => {
100
+ if (!uniformsRef.current) return;
101
+ try {
102
+ Object.entries(uniformsRef.current).forEach(([propName, uniformData]) => {
103
+ if (!uniformData || typeof uniformData !== "object") return;
104
+ const { uniform, transform } = uniformData;
105
+ if (uniform?.value !== void 0 && propName in effectiveProps) {
106
+ const newValue = effectiveProps[propName];
107
+ if (newValue !== prevPropsRef.current[propName]) {
108
+ parentUniformUpdate(instanceId, propName, newValue);
109
+ prevPropsRef.current[propName] = newValue;
110
+ }
111
+ }
112
+ });
113
+ } catch (error) {
114
+ console.error("Error updating uniforms:", error);
115
+ }
116
+ }, [
117
+ effectiveProps,
118
+ instanceId,
119
+ parentUniformUpdate
120
+ ]);
121
+ useEffect(() => {
122
+ try {
123
+ parentMetadataUpdate(instanceId, {
124
+ blendMode: props.blendMode || "normal",
125
+ opacity: props.opacity,
126
+ visible: props.visible === false ? false : true,
127
+ id: props.id,
128
+ mask: props.maskSource ? {
129
+ source: props.maskSource,
130
+ type: props.maskType || "alpha"
131
+ } : void 0,
132
+ renderOrder: props.renderOrder ?? detectedOrderRef.current,
133
+ transform: effectiveTransform
134
+ });
135
+ } catch (error) {
136
+ console.error("Error updating metadata:", error);
137
+ }
138
+ }, [
139
+ props.blendMode,
140
+ props.opacity,
141
+ props.visible,
142
+ props.maskSource,
143
+ props.maskType,
144
+ props.renderOrder,
145
+ props.id,
146
+ effectiveTransform,
147
+ instanceId,
148
+ parentMetadataUpdate
149
+ ]);
150
+ if (props.ref && typeof props.ref === "function") try {
151
+ props.ref(null);
152
+ } catch (e) {}
153
+ return /* @__PURE__ */ jsx(ShaderContext.Provider, {
154
+ value: childContextValue,
155
+ children: /* @__PURE__ */ jsx("span", {
156
+ ref: markerRef,
157
+ style: MARKER_STYLE,
158
+ "data-shader-id": instanceId,
159
+ children: props.children
160
+ })
161
+ });
162
+ };
163
+ var CursorRipples_default = ShaderComponent;
164
+ export { CursorRipples_default as default };
@@ -0,0 +1,31 @@
1
+ import { default as React } from 'react';
2
+ import { BlendMode, TransformConfig } from '../../core';
3
+ import { ComponentProps } from '../../core/shaders/CursorRipples';
4
+
5
+ export type { ComponentProps };
6
+ /**
7
+ * Base props that all shader components have
8
+ */
9
+ interface BaseShaderProps {
10
+ children?: React.ReactNode;
11
+ blendMode?: BlendMode;
12
+ opacity?: number;
13
+ visible?: boolean;
14
+ id?: string;
15
+ maskSource?: string;
16
+ maskType?: string;
17
+ renderOrder?: number;
18
+ transform?: Partial<TransformConfig>;
19
+ ref?: React.Ref<any>;
20
+ }
21
+ /**
22
+ * Component-specific props that merge base props with shader-specific props
23
+ * Note: ComponentProps are made optional since they have defaults from the shader definition
24
+ */
25
+ type ShaderComponentProps = BaseShaderProps & Partial<ComponentProps>;
26
+ /**
27
+ * The main React wrapper component for Shader shader nodes
28
+ */
29
+ export declare const ShaderComponent: React.FC<ShaderComponentProps>;
30
+ export default ShaderComponent;
31
+ //# sourceMappingURL=CursorRipples.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CursorRipples.d.ts","sourceRoot":"","sources":["../../src/components/CursorRipples.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiD,MAAM,OAAO,CAAC;AACtE,OAAO,EAGH,KAAK,SAAS,EAId,KAAK,eAAe,EACvB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGtF,YAAY,EAAE,cAAc,EAAE,CAAC;AAI/B;;GAEG;AACH,UAAU,eAAe;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,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;IACrC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CACxB;AAED;;;GAGG;AACH,KAAK,oBAAoB,GAAG,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAwDtE;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAgL1D,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -14,6 +14,7 @@ export { default as ChromaticAberration } from './components/ChromaticAberration
14
14
  export { default as Circle } from './components/Circle';
15
15
  export { default as ConcentricSpin } from './components/ConcentricSpin';
16
16
  export { default as ContourLines } from './components/ContourLines';
17
+ export { default as CursorRipples } from './components/CursorRipples';
17
18
  export { default as CursorTrail } from './components/CursorTrail';
18
19
  export { default as DiffuseBlur } from './components/DiffuseBlur';
19
20
  export { default as Dither } from './components/Dither';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ import ChromaticAberration_default from "./ChromaticAberration.js";
15
15
  import Circle_default from "./Circle.js";
16
16
  import ConcentricSpin_default from "./ConcentricSpin.js";
17
17
  import ContourLines_default from "./ContourLines.js";
18
+ import CursorRipples_default from "./CursorRipples.js";
18
19
  import CursorTrail_default from "./CursorTrail.js";
19
20
  import DiffuseBlur_default from "./DiffuseBlur.js";
20
21
  import Dither_default from "./Dither.js";
@@ -73,4 +74,4 @@ import WaveDistortion_default from "./WaveDistortion.js";
73
74
  import WebcamTexture_default from "./WebcamTexture.js";
74
75
  import ZoomBlur_default from "./ZoomBlur.js";
75
76
  import { generatePresetCode } from "./utils/generatePresetCode.js";
76
- export { AngularBlur_default as AngularBlur, Ascii_default as Ascii, Aurora_default as Aurora, Beam_default as Beam, Blob_default as Blob, Blur_default as Blur, BrightnessContrast_default as BrightnessContrast, Bulge_default as Bulge, CRTScreen_default as CRTScreen, ChannelBlur_default as ChannelBlur, Checkerboard_default as Checkerboard, ChromaFlow_default as ChromaFlow, ChromaticAberration_default as ChromaticAberration, Circle_default as Circle, ConcentricSpin_default as ConcentricSpin, ContourLines_default as ContourLines, CursorTrail_default as CursorTrail, DiffuseBlur_default as DiffuseBlur, Dither_default as Dither, DotGrid_default as DotGrid, Duotone_default as Duotone, FilmGrain_default as FilmGrain, FloatingParticles_default as FloatingParticles, FlowField_default as FlowField, GlassTiles_default as GlassTiles, Glitch_default as Glitch, Glow_default as Glow, Godrays_default as Godrays, Grayscale_default as Grayscale, Grid_default as Grid, GridDistortion_default as GridDistortion, Group_default as Group, Halftone_default as Halftone, HueShift_default as HueShift, ImageTexture_default as ImageTexture, Invert_default as Invert, Kaleidoscope_default as Kaleidoscope, LensFlare_default as LensFlare, LinearBlur_default as LinearBlur, LinearGradient_default as LinearGradient, Liquify_default as Liquify, Mirror_default as Mirror, Perspective_default as Perspective, Pixelate_default as Pixelate, Plasma_default as Plasma, PolarCoordinates_default as PolarCoordinates, Posterize_default as Posterize, ProgressiveBlur_default as ProgressiveBlur, RadialGradient_default as RadialGradient, RectangularCoordinates_default as RectangularCoordinates, Ripples_default as Ripples, Saturation_default as Saturation, Shader_default as Shader, Sharpness_default as Sharpness, Shatter_default as Shatter, SimplexNoise_default as SimplexNoise, SineWave_default as SineWave, SolidColor_default as SolidColor, Spherize_default as Spherize, Spiral_default as Spiral, Strands_default as Strands, Stretch_default as Stretch, Stripes_default as Stripes, StudioBackground_default as StudioBackground, Swirl_default as Swirl, TiltShift_default as TiltShift, Tint_default as Tint, Tritone_default as Tritone, Twirl_default as Twirl, Vibrance_default as Vibrance, VideoTexture_default as VideoTexture, WaveDistortion_default as WaveDistortion, WebcamTexture_default as WebcamTexture, ZoomBlur_default as ZoomBlur, generatePresetCode };
77
+ export { AngularBlur_default as AngularBlur, Ascii_default as Ascii, Aurora_default as Aurora, Beam_default as Beam, Blob_default as Blob, Blur_default as Blur, BrightnessContrast_default as BrightnessContrast, Bulge_default as Bulge, CRTScreen_default as CRTScreen, ChannelBlur_default as ChannelBlur, Checkerboard_default as Checkerboard, ChromaFlow_default as ChromaFlow, ChromaticAberration_default as ChromaticAberration, Circle_default as Circle, ConcentricSpin_default as ConcentricSpin, ContourLines_default as ContourLines, CursorRipples_default as CursorRipples, CursorTrail_default as CursorTrail, DiffuseBlur_default as DiffuseBlur, Dither_default as Dither, DotGrid_default as DotGrid, Duotone_default as Duotone, FilmGrain_default as FilmGrain, FloatingParticles_default as FloatingParticles, FlowField_default as FlowField, GlassTiles_default as GlassTiles, Glitch_default as Glitch, Glow_default as Glow, Godrays_default as Godrays, Grayscale_default as Grayscale, Grid_default as Grid, GridDistortion_default as GridDistortion, Group_default as Group, Halftone_default as Halftone, HueShift_default as HueShift, ImageTexture_default as ImageTexture, Invert_default as Invert, Kaleidoscope_default as Kaleidoscope, LensFlare_default as LensFlare, LinearBlur_default as LinearBlur, LinearGradient_default as LinearGradient, Liquify_default as Liquify, Mirror_default as Mirror, Perspective_default as Perspective, Pixelate_default as Pixelate, Plasma_default as Plasma, PolarCoordinates_default as PolarCoordinates, Posterize_default as Posterize, ProgressiveBlur_default as ProgressiveBlur, RadialGradient_default as RadialGradient, RectangularCoordinates_default as RectangularCoordinates, Ripples_default as Ripples, Saturation_default as Saturation, Shader_default as Shader, Sharpness_default as Sharpness, Shatter_default as Shatter, SimplexNoise_default as SimplexNoise, SineWave_default as SineWave, SolidColor_default as SolidColor, Spherize_default as Spherize, Spiral_default as Spiral, Strands_default as Strands, Stretch_default as Stretch, Stripes_default as Stripes, StudioBackground_default as StudioBackground, Swirl_default as Swirl, TiltShift_default as TiltShift, Tint_default as Tint, Tritone_default as Tritone, Twirl_default as Twirl, Vibrance_default as Vibrance, VideoTexture_default as VideoTexture, WaveDistortion_default as WaveDistortion, WebcamTexture_default as WebcamTexture, ZoomBlur_default as ZoomBlur, generatePresetCode };
@@ -1 +1 @@
1
- {"version":3,"file":"generatePresetCode.d.ts","sourceRoot":"","sources":["../../src/utils/generatePresetCode.ts"],"names":[],"mappings":"AAAA,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAA;CAC7B;AAED,UAAU,YAAY;IACpB,UAAU,EAAE,eAAe,EAAE,CAAA;CAC9B;AA43BD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAyC/D;AAGD,eAAO,MAAM,mBAAmB,UA2E/B,CAAA"}
1
+ {"version":3,"file":"generatePresetCode.d.ts","sourceRoot":"","sources":["../../src/utils/generatePresetCode.ts"],"names":[],"mappings":"AAAA,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC3B,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAA;CAC7B;AAED,UAAU,YAAY;IACpB,UAAU,EAAE,eAAe,EAAE,CAAA;CAC9B;AAq4BD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAyC/D;AAGD,eAAO,MAAM,mBAAmB,UA4E/B,CAAA"}
@@ -204,6 +204,15 @@ var shaderMetadata = {
204
204
  "vignetteIntensity": 1,
205
205
  "vignetteRadius": .5
206
206
  },
207
+ "CursorRipples": {
208
+ "opacity": 1,
209
+ "blendMode": "normal",
210
+ "intensity": 10,
211
+ "decay": 10,
212
+ "radius": .5,
213
+ "chromaticSplit": 1,
214
+ "edges": "stretch"
215
+ },
207
216
  "CursorTrail": {
208
217
  "opacity": 1,
209
218
  "blendMode": "normal",
@@ -862,6 +871,7 @@ const availableComponents = [
862
871
  "Circle",
863
872
  "ConcentricSpin",
864
873
  "ContourLines",
874
+ "CursorRipples",
865
875
  "CursorTrail",
866
876
  "DiffuseBlur",
867
877
  "Dither",
package/dist/registry.js CHANGED
@@ -2954,6 +2954,174 @@ export const shaderRegistry = [
2954
2954
  }
2955
2955
  }
2956
2956
  },
2957
+ {
2958
+ "name": "CursorRipples",
2959
+ "category": "Interactive",
2960
+ "description": "Fluid-like ripple distortion",
2961
+ "fileName": "CursorRipples",
2962
+ "requiresChild": true,
2963
+ "definition": {
2964
+ "name": "CursorRipples",
2965
+ "category": "Interactive",
2966
+ "description": "Fluid-like ripple distortion",
2967
+ "requiresRTT": true,
2968
+ "requiresChild": true,
2969
+ "props": {
2970
+ "intensity": {
2971
+ "default": 10,
2972
+ "description": "Strength of the ripple distortion",
2973
+ "ui": {
2974
+ "type": "range",
2975
+ "min": 0,
2976
+ "max": 20,
2977
+ "step": 0.1,
2978
+ "label": "Intensity",
2979
+ "group": "Effect"
2980
+ }
2981
+ },
2982
+ "decay": {
2983
+ "default": 10,
2984
+ "description": "How quickly ripples fade (higher = faster)",
2985
+ "ui": {
2986
+ "type": "range",
2987
+ "min": 0,
2988
+ "max": 20,
2989
+ "step": 0.1,
2990
+ "label": "Decay",
2991
+ "group": "Effect"
2992
+ }
2993
+ },
2994
+ "radius": {
2995
+ "default": 0.5,
2996
+ "description": "Radius of cursor influence",
2997
+ "ui": {
2998
+ "type": "range",
2999
+ "min": 0.1,
3000
+ "max": 1,
3001
+ "step": 0.1,
3002
+ "label": "Radius",
3003
+ "group": "Effect"
3004
+ }
3005
+ },
3006
+ "chromaticSplit": {
3007
+ "default": 1,
3008
+ "description": "RGB channel separation along ripple edges",
3009
+ "ui": {
3010
+ "type": "range",
3011
+ "min": 0,
3012
+ "max": 3,
3013
+ "step": 0.1,
3014
+ "label": "Chromatic Split",
3015
+ "group": "Effect"
3016
+ }
3017
+ },
3018
+ "edges": {
3019
+ "default": "stretch",
3020
+ "description": "How to handle edges when distortion pushes content out of bounds",
3021
+ "ui": {
3022
+ "type": "select",
3023
+ "options": [
3024
+ {
3025
+ "label": "Stretch",
3026
+ "value": "stretch"
3027
+ },
3028
+ {
3029
+ "label": "Transparent",
3030
+ "value": "transparent"
3031
+ },
3032
+ {
3033
+ "label": "Mirror",
3034
+ "value": "mirror"
3035
+ },
3036
+ {
3037
+ "label": "Wrap",
3038
+ "value": "wrap"
3039
+ }
3040
+ ],
3041
+ "label": "Edges",
3042
+ "group": "Effect"
3043
+ }
3044
+ }
3045
+ }
3046
+ },
3047
+ "propsMetadata": {
3048
+ "intensity": {
3049
+ "ui": {
3050
+ "type": "range",
3051
+ "min": 0,
3052
+ "max": 20,
3053
+ "step": 0.1,
3054
+ "label": "Intensity",
3055
+ "group": "Effect"
3056
+ },
3057
+ "default": 10,
3058
+ "description": "Strength of the ripple distortion"
3059
+ },
3060
+ "decay": {
3061
+ "ui": {
3062
+ "type": "range",
3063
+ "min": 0,
3064
+ "max": 20,
3065
+ "step": 0.1,
3066
+ "label": "Decay",
3067
+ "group": "Effect"
3068
+ },
3069
+ "default": 10,
3070
+ "description": "How quickly ripples fade (higher = faster)"
3071
+ },
3072
+ "radius": {
3073
+ "ui": {
3074
+ "type": "range",
3075
+ "min": 0.1,
3076
+ "max": 1,
3077
+ "step": 0.1,
3078
+ "label": "Radius",
3079
+ "group": "Effect"
3080
+ },
3081
+ "default": 0.5,
3082
+ "description": "Radius of cursor influence"
3083
+ },
3084
+ "chromaticSplit": {
3085
+ "ui": {
3086
+ "type": "range",
3087
+ "min": 0,
3088
+ "max": 3,
3089
+ "step": 0.1,
3090
+ "label": "Chromatic Split",
3091
+ "group": "Effect"
3092
+ },
3093
+ "default": 1,
3094
+ "description": "RGB channel separation along ripple edges"
3095
+ },
3096
+ "edges": {
3097
+ "ui": {
3098
+ "type": "select",
3099
+ "options": [
3100
+ {
3101
+ "label": "Stretch",
3102
+ "value": "stretch"
3103
+ },
3104
+ {
3105
+ "label": "Transparent",
3106
+ "value": "transparent"
3107
+ },
3108
+ {
3109
+ "label": "Mirror",
3110
+ "value": "mirror"
3111
+ },
3112
+ {
3113
+ "label": "Wrap",
3114
+ "value": "wrap"
3115
+ }
3116
+ ],
3117
+ "label": "Edges",
3118
+ "group": "Effect"
3119
+ },
3120
+ "default": "stretch",
3121
+ "description": "How to handle edges when distortion pushes content out of bounds"
3122
+ }
3123
+ }
3124
+ },
2957
3125
  {
2958
3126
  "name": "CursorTrail",
2959
3127
  "category": "Interactive",
@@ -0,0 +1,28 @@
1
+ import { JSX } from 'solid-js';
2
+ import { BlendMode, TransformConfig } from '../../core';
3
+ import { ComponentProps } from '../../core/shaders/CursorRipples';
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<ComponentProps>;
24
+ /**
25
+ * The main Solid wrapper component for Shader shader nodes
26
+ */
27
+ export default function ShaderComponent(props: ShaderComponentProps): JSX.Element;
28
+ //# sourceMappingURL=CursorRipples.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CursorRipples.d.ts","sourceRoot":"","sources":["../../src/components/CursorRipples.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA4D,KAAK,GAAG,EAAE,MAAM,UAAU,CAAC;AAC9F,OAAO,EAGH,KAAK,SAAS,EAId,KAAK,eAAe,EACvB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAuB,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGtF,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;AAED;;;GAGG;AACH,KAAK,oBAAoB,GAAG,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAmCtE;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,oBAAoB,eAiLlE"}
@@ -0,0 +1,168 @@
1
+ import { createComponent, template, use, setAttribute, insert } from "solid-js/web";
2
+ import { splitProps, createMemo, onMount, onCleanup, createEffect } from "solid-js";
3
+ import { createUniformsMap } from "../../core/index.js";
4
+ import { componentDefinition } from "../../core/shaders/CursorRipples/index.js";
5
+ import { useShaderContext, ShaderContext } from "../engine/Shader.js";
6
+ var _tmpl$ = /* @__PURE__ */ template(`<span style=display:contents>`);
7
+ const DEFAULT_TRANSFORM = {
8
+ offsetX: 0,
9
+ offsetY: 0,
10
+ rotation: 0,
11
+ scale: 1,
12
+ anchorX: 0.5,
13
+ anchorY: 0.5,
14
+ edges: "transparent"
15
+ };
16
+ const defaultProps = {
17
+ blendMode: "normal",
18
+ visible: true
19
+ // opacity intentionally has no default - handled by renderer
20
+ // transform intentionally has no default - handled by effectiveTransform
21
+ };
22
+ try {
23
+ if (componentDefinition && componentDefinition.props) {
24
+ Object.entries(componentDefinition.props).forEach(([key, config]) => {
25
+ const propConfig = config;
26
+ if (propConfig && typeof propConfig === "object" && "default" in propConfig) {
27
+ defaultProps[key] = propConfig.default;
28
+ }
29
+ });
30
+ }
31
+ } catch (e) {
32
+ console.warn("Error extracting default props:", e);
33
+ }
34
+ function ShaderComponent(props) {
35
+ const [local, otherProps] = splitProps(props, ["children"]);
36
+ const context = useShaderContext();
37
+ const {
38
+ shaderParentId: parentId,
39
+ shaderNodeRegister: parentRegister,
40
+ shaderUniformUpdate: parentUniformUpdate,
41
+ shaderMetadataUpdate: parentMetadataUpdate
42
+ } = context;
43
+ const instanceId = props.id || Math.random().toString(36).substring(2, 10);
44
+ const effectiveProps = createMemo(() => {
45
+ let baseProps = {
46
+ ...defaultProps
47
+ };
48
+ for (const [key, value] of Object.entries(otherProps)) {
49
+ if (value !== void 0) {
50
+ baseProps[key] = value;
51
+ }
52
+ }
53
+ return baseProps;
54
+ });
55
+ const effectiveTransform = createMemo(() => ({
56
+ ...DEFAULT_TRANSFORM,
57
+ ...props.transform
58
+ }));
59
+ let uniformsMap = null;
60
+ const getUniformsMap = () => {
61
+ if (!uniformsMap) {
62
+ uniformsMap = createUniformsMap(componentDefinition, effectiveProps(), instanceId);
63
+ }
64
+ return uniformsMap;
65
+ };
66
+ const childContextValue = createMemo(() => ({
67
+ ...context,
68
+ shaderParentId: instanceId
69
+ }));
70
+ let markerRef;
71
+ let detectedRenderOrder = void 0;
72
+ let isRegistered = false;
73
+ onMount(() => {
74
+ const uniforms = getUniformsMap();
75
+ if (!uniforms) return;
76
+ try {
77
+ const metadata = {
78
+ blendMode: props.blendMode || "normal",
79
+ opacity: props.opacity,
80
+ visible: props.visible === false ? false : true,
81
+ id: props.id,
82
+ mask: props.maskSource ? {
83
+ source: props.maskSource,
84
+ type: props.maskType || "alpha"
85
+ } : void 0,
86
+ renderOrder: props.renderOrder ?? detectedRenderOrder,
87
+ transform: effectiveTransform()
88
+ };
89
+ parentRegister(instanceId, componentDefinition.fragmentNode, parentId, metadata, uniforms, componentDefinition);
90
+ isRegistered = true;
91
+ if (props.renderOrder === void 0 && markerRef) {
92
+ const parent = markerRef.parentElement;
93
+ if (parent) {
94
+ const siblings = parent.querySelectorAll(":scope > [data-shader-id]");
95
+ const position = Array.from(siblings).indexOf(markerRef);
96
+ if (position >= 0) {
97
+ detectedRenderOrder = position;
98
+ parentMetadataUpdate(instanceId, {
99
+ renderOrder: position
100
+ });
101
+ }
102
+ }
103
+ }
104
+ } catch (error) {
105
+ console.error("Error registering shader node:", error);
106
+ }
107
+ });
108
+ onCleanup(() => {
109
+ isRegistered = false;
110
+ parentRegister(instanceId, null, null, null, null);
111
+ });
112
+ createEffect(() => {
113
+ if (!isRegistered) return;
114
+ const uniforms = getUniformsMap();
115
+ if (!uniforms) return;
116
+ try {
117
+ const props_snapshot = effectiveProps();
118
+ Object.entries(uniforms).forEach(([propName, uniformData]) => {
119
+ if (!uniformData || typeof uniformData !== "object") return;
120
+ const {
121
+ uniform
122
+ } = uniformData;
123
+ if ((uniform == null ? void 0 : uniform.value) !== void 0 && propName in props_snapshot) {
124
+ const newValue = props_snapshot[propName];
125
+ parentUniformUpdate(instanceId, propName, newValue);
126
+ }
127
+ });
128
+ } catch (error) {
129
+ console.error("Error updating uniforms:", error);
130
+ }
131
+ });
132
+ createEffect(() => {
133
+ if (!isRegistered) return;
134
+ try {
135
+ const metadata = {
136
+ blendMode: props.blendMode || "normal",
137
+ opacity: props.opacity,
138
+ visible: props.visible === false ? false : true,
139
+ id: props.id,
140
+ mask: props.maskSource ? {
141
+ source: props.maskSource,
142
+ type: props.maskType || "alpha"
143
+ } : void 0,
144
+ renderOrder: props.renderOrder ?? detectedRenderOrder,
145
+ transform: effectiveTransform()
146
+ };
147
+ parentMetadataUpdate(instanceId, metadata);
148
+ } catch (error) {
149
+ console.error("Error updating metadata:", error);
150
+ }
151
+ });
152
+ return createComponent(ShaderContext.Provider, {
153
+ get value() {
154
+ return childContextValue();
155
+ },
156
+ get children() {
157
+ var _el$ = _tmpl$();
158
+ var _ref$ = markerRef;
159
+ typeof _ref$ === "function" ? use(_ref$, _el$) : markerRef = _el$;
160
+ setAttribute(_el$, "data-shader-id", instanceId);
161
+ insert(_el$, () => local.children);
162
+ return _el$;
163
+ }
164
+ });
165
+ }
166
+ export {
167
+ ShaderComponent as default
168
+ };
@@ -14,6 +14,7 @@ export { default as ChromaticAberration } from './components/ChromaticAberration
14
14
  export { default as Circle } from './components/Circle';
15
15
  export { default as ConcentricSpin } from './components/ConcentricSpin';
16
16
  export { default as ContourLines } from './components/ContourLines';
17
+ export { default as CursorRipples } from './components/CursorRipples';
17
18
  export { default as CursorTrail } from './components/CursorTrail';
18
19
  export { default as DiffuseBlur } from './components/DiffuseBlur';
19
20
  export { default as Dither } from './components/Dither';