shaders 2.0.673 → 2.0.674

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 (124) hide show
  1. package/dist/react/components/FloatingParticles.d.ts +29 -0
  2. package/dist/react/components/FloatingParticles.d.ts.map +1 -0
  3. package/dist/react/engine/Shader.d.ts.map +1 -1
  4. package/dist/react/index.cjs +21 -21
  5. package/dist/react/index.cjs.map +1 -1
  6. package/dist/react/index.d.ts +1 -0
  7. package/dist/react/index.d.ts.map +1 -1
  8. package/dist/react/index.js +317 -315
  9. package/dist/react/index.js.map +1 -1
  10. package/dist/react/utils/generatePresetCode.d.ts.map +1 -1
  11. package/dist/svelte/engine/Shader.svelte +9 -10
  12. package/dist/vue/components/AngularBlur.vue.d.ts.map +1 -1
  13. package/dist/vue/components/Ascii.vue.d.ts.map +1 -1
  14. package/dist/vue/components/Blob.vue.d.ts.map +1 -1
  15. package/dist/vue/components/Blur.vue.d.ts.map +1 -1
  16. package/dist/vue/components/Bulge.vue.d.ts.map +1 -1
  17. package/dist/vue/components/CRTScreen.vue.d.ts.map +1 -1
  18. package/dist/vue/components/Checkerboard.vue.d.ts.map +1 -1
  19. package/dist/vue/components/ChromaFlow.vue.d.ts.map +1 -1
  20. package/dist/vue/components/ChromaticAberration.vue.d.ts.map +1 -1
  21. package/dist/vue/components/Circle.vue.d.ts.map +1 -1
  22. package/dist/vue/components/ColorMapping.vue.d.ts.map +1 -1
  23. package/dist/vue/components/Dither.vue.d.ts.map +1 -1
  24. package/dist/vue/components/DotGrid.vue.d.ts.map +1 -1
  25. package/dist/vue/components/Duotone.vue.d.ts.map +1 -1
  26. package/dist/vue/components/Exposure.vue.d.ts.map +1 -1
  27. package/dist/vue/components/FilmGrain.vue.d.ts.map +1 -1
  28. package/dist/vue/components/FloatingParticles.vue.d.ts.map +1 -1
  29. package/dist/vue/components/GlassTiles.vue.d.ts.map +1 -1
  30. package/dist/vue/components/Glitch.vue.d.ts.map +1 -1
  31. package/dist/vue/components/Glow.vue.d.ts.map +1 -1
  32. package/dist/vue/components/Godrays.vue.d.ts.map +1 -1
  33. package/dist/vue/components/Grayscale.vue.d.ts.map +1 -1
  34. package/dist/vue/components/Grid.vue.d.ts.map +1 -1
  35. package/dist/vue/components/GridDistortion.vue.d.ts.map +1 -1
  36. package/dist/vue/components/Group.vue.d.ts.map +1 -1
  37. package/dist/vue/components/HalfTone.vue.d.ts.map +1 -1
  38. package/dist/vue/components/HueShift.vue.d.ts.map +1 -1
  39. package/dist/vue/components/ImageTexture.vue.d.ts.map +1 -1
  40. package/dist/vue/components/Invert.vue.d.ts.map +1 -1
  41. package/dist/vue/components/LinearBlur.vue.d.ts.map +1 -1
  42. package/dist/vue/components/LinearGradient.vue.d.ts.map +1 -1
  43. package/dist/vue/components/Liquify.vue.d.ts.map +1 -1
  44. package/dist/vue/components/Mirror.vue.d.ts.map +1 -1
  45. package/dist/vue/components/PerlinNoise.vue.d.ts.map +1 -1
  46. package/dist/vue/components/Pixelate.vue.d.ts.map +1 -1
  47. package/dist/vue/components/Posterize.vue.d.ts.map +1 -1
  48. package/dist/vue/components/ProgressiveBlur.vue.d.ts.map +1 -1
  49. package/dist/vue/components/RadialBlur.vue.d.ts.map +1 -1
  50. package/dist/vue/components/RadialGradient.vue.d.ts.map +1 -1
  51. package/dist/vue/components/Ripples.vue.d.ts.map +1 -1
  52. package/dist/vue/components/Saturation.vue.d.ts.map +1 -1
  53. package/dist/vue/components/SimplexNoise.vue.d.ts.map +1 -1
  54. package/dist/vue/components/SineWave.vue.d.ts.map +1 -1
  55. package/dist/vue/components/SolidColor.vue.d.ts.map +1 -1
  56. package/dist/vue/components/Spiral.vue.d.ts.map +1 -1
  57. package/dist/vue/components/Stretch.vue.d.ts.map +1 -1
  58. package/dist/vue/components/Swirl.vue.d.ts.map +1 -1
  59. package/dist/vue/components/TiltShift.vue.d.ts.map +1 -1
  60. package/dist/vue/components/Tint.vue.d.ts.map +1 -1
  61. package/dist/vue/components/Twirl.vue.d.ts.map +1 -1
  62. package/dist/vue/components/VCR.vue.d.ts.map +1 -1
  63. package/dist/vue/components/Vibrance.vue.d.ts.map +1 -1
  64. package/dist/vue/components/Vignette.vue.d.ts.map +1 -1
  65. package/dist/vue/components/Voronoi.vue.d.ts.map +1 -1
  66. package/dist/vue/engine/Shader.vue.d.ts.map +1 -1
  67. package/dist/vue/index100.js +4 -4
  68. package/dist/vue/index102.js +4 -4
  69. package/dist/vue/index104.js +4 -4
  70. package/dist/vue/index106.js +4 -4
  71. package/dist/vue/index108.js +4 -4
  72. package/dist/vue/index110.js +4 -4
  73. package/dist/vue/index112.js +4 -4
  74. package/dist/vue/index114.js +4 -4
  75. package/dist/vue/index116.js +4 -4
  76. package/dist/vue/index118.js +4 -4
  77. package/dist/vue/index120.js +4 -4
  78. package/dist/vue/index122.js +4 -4
  79. package/dist/vue/index124.js +4 -4
  80. package/dist/vue/index126.js +4 -4
  81. package/dist/vue/index128.js +4 -4
  82. package/dist/vue/index130.js +4 -4
  83. package/dist/vue/index132.js +4 -4
  84. package/dist/vue/index134.js +4 -4
  85. package/dist/vue/index136.js +4 -4
  86. package/dist/vue/index138.js +4 -4
  87. package/dist/vue/index140.js +4 -4
  88. package/dist/vue/index142.js +4 -4
  89. package/dist/vue/index144.js +4 -4
  90. package/dist/vue/index146.js +4 -4
  91. package/dist/vue/index148.js +4 -4
  92. package/dist/vue/index150.js +4 -4
  93. package/dist/vue/index152.js +4 -4
  94. package/dist/vue/index154.js +4 -4
  95. package/dist/vue/index156.js +4 -4
  96. package/dist/vue/index158.js +4 -4
  97. package/dist/vue/index160.js +4 -4
  98. package/dist/vue/index162.js +4 -4
  99. package/dist/vue/index164.js +4 -4
  100. package/dist/vue/index166.js +4 -4
  101. package/dist/vue/index168.js +4 -4
  102. package/dist/vue/index172.js +4 -4
  103. package/dist/vue/index61.js +157 -155
  104. package/dist/vue/index62.js +4 -4
  105. package/dist/vue/index64.js +4 -4
  106. package/dist/vue/index66.js +4 -4
  107. package/dist/vue/index68.js +4 -4
  108. package/dist/vue/index70.js +4 -4
  109. package/dist/vue/index72.js +4 -4
  110. package/dist/vue/index74.js +4 -4
  111. package/dist/vue/index76.js +4 -4
  112. package/dist/vue/index78.js +4 -4
  113. package/dist/vue/index80.js +4 -4
  114. package/dist/vue/index82.js +4 -4
  115. package/dist/vue/index84.js +4 -4
  116. package/dist/vue/index86.js +4 -4
  117. package/dist/vue/index88.js +4 -4
  118. package/dist/vue/index90.js +4 -4
  119. package/dist/vue/index92.js +4 -4
  120. package/dist/vue/index94.js +4 -4
  121. package/dist/vue/index96.js +4 -4
  122. package/dist/vue/index98.js +4 -4
  123. package/dist/vue/utils/generatePresetCode.d.ts.map +1 -1
  124. package/package.json +1 -1
@@ -5,40 +5,40 @@ import { n as C } from "./index7.js";
5
5
  import { t as w } from "./index8.js";
6
6
  import { r as T } from "./index9.js";
7
7
  import { n as E } from "./index10.js";
8
- import { o as ne } from "./index11.js";
9
- import { t as D } from "./index12.js";
10
- import { r as O } from "./index13.js";
11
- import { t as k } from "./index14.js";
12
- import { t as A } from "./index15.js";
13
- import { n as j } from "./index16.js";
14
- import { r as M } from "./index17.js";
15
- import { t as N } from "./index18.js";
16
- import { t as P } from "./index19.js";
17
- import { t as F } from "./index20.js";
18
- import { n as I } from "./index21.js";
19
- import { t as L } from "./index22.js";
20
- import { t as R } from "./index23.js";
21
- import { t as re } from "./index24.js";
22
- import { i as z } from "./index25.js";
23
- import { n as ie } from "./index28.js";
24
- import { n as ae } from "./index29.js";
25
- import { a as B } from "./index30.js";
26
- import { t as V } from "./index31.js";
27
- import { t as oe } from "./index32.js";
28
- import { n as se } from "./index33.js";
29
- import { r as H } from "./index34.js";
30
- import { t as U } from "./index35.js";
31
- import { t as W } from "./index36.js";
32
- import { i as ce } from "./index37.js";
33
- import { a as le } from "./index38.js";
34
- import { t as ue } from "./index39.js";
35
- import { t as G } from "./index40.js";
36
- import { t as de } from "./index41.js";
37
- import { a as K } from "./index42.js";
38
- import { t as q } from "./index43.js";
39
- import { n as J } from "./index44.js";
40
- import { r as Y } from "./index45.js";
41
- import { r as X } from "./index46.js";
8
+ import { o as D } from "./index11.js";
9
+ import { t as O } from "./index12.js";
10
+ import { r as k } from "./index13.js";
11
+ import { t as A } from "./index14.js";
12
+ import { t as j } from "./index15.js";
13
+ import { n as M } from "./index16.js";
14
+ import { r as N } from "./index17.js";
15
+ import { t as P } from "./index18.js";
16
+ import { t as F } from "./index19.js";
17
+ import { t as I } from "./index20.js";
18
+ import { n as L } from "./index21.js";
19
+ import { t as R } from "./index22.js";
20
+ import { t as z } from "./index23.js";
21
+ import { t as ne } from "./index24.js";
22
+ import { i as B } from "./index25.js";
23
+ import { n as re } from "./index28.js";
24
+ import { n as ie } from "./index29.js";
25
+ import { a as V } from "./index30.js";
26
+ import { t as H } from "./index31.js";
27
+ import { t as ae } from "./index32.js";
28
+ import { n as oe } from "./index33.js";
29
+ import { r as U } from "./index34.js";
30
+ import { t as W } from "./index35.js";
31
+ import { t as G } from "./index36.js";
32
+ import { i as se } from "./index37.js";
33
+ import { a as ce } from "./index38.js";
34
+ import { t as le } from "./index39.js";
35
+ import { t as K } from "./index40.js";
36
+ import { t as ue } from "./index41.js";
37
+ import { a as q } from "./index42.js";
38
+ import { t as J } from "./index43.js";
39
+ import { n as Y } from "./index44.js";
40
+ import { r as X } from "./index45.js";
41
+ import { r as de } from "./index46.js";
42
42
  import { n as Z } from "./index47.js";
43
43
  import { p as fe } from "./index48.js";
44
44
  import { i as pe } from "./index49.js";
@@ -202,81 +202,81 @@ function Qe() {
202
202
  nodes: /* @__PURE__ */ new Map(),
203
203
  rootId: null,
204
204
  idToNodeId: /* @__PURE__ */ new Map()
205
- }, p = null, m = null, _ = null, v = !1, y = !1, b = !1, x = null, S = !1, C = !0, w = 0, T = 0, E = !1, ne = 0, D = 0, O = !1, k = .5, A = .5, j = !1, M = !1, N = !1, P = [], F = !1, I = [], L = !1, R = /* @__PURE__ */ new Set(), re = () => window.matchMedia?.("(prefers-reduced-motion: reduce)").matches ?? !1, z = (e, r) => {
205
+ }, p = null, m = null, _ = null, v = !1, y = !1, b = !1, x = null, S = !1, C = !0, w = 0, T = 0, E = !1, D = 0, O = 0, k = !1, A = .5, j = .5, M = !1, N = !1, P = !1, F = [], I = !1, L = [], R = !1, z = /* @__PURE__ */ new Set(), ne = () => window.matchMedia?.("(prefers-reduced-motion: reduce)").matches ?? !1, B = (e, r) => {
206
206
  if (e <= 0 || r <= 0 || e === w && r === T) return;
207
207
  let i = performance.now();
208
- if (i - ne < 8) return;
208
+ if (i - D < 8) return;
209
209
  let a = w, s = T;
210
- w = e, T = r, ne = i, b ||= !0, t.setSize(e, r, !1);
210
+ w = e, T = r, D = i, b ||= !0, t.setSize(e, r, !1);
211
211
  let c = e / r, l = 2 * c;
212
- n.left = -l / 2, n.right = l / 2, n.top = 2 / 2, n.bottom = -2 / 2, n.updateProjectionMatrix(), o.scale.set(l, 2, 1), (d.rootId && (a === 0 || s === 0) || d.rootId && b) && V(), q().catch(console.warn);
213
- }, ie = (e) => {
212
+ n.left = -l / 2, n.right = l / 2, n.top = 2 / 2, n.bottom = -2 / 2, n.updateProjectionMatrix(), o.scale.set(l, 2, 1), (d.rootId && (a === 0 || s === 0) || d.rootId && b) && H(), J().catch(console.warn);
213
+ }, re = (e) => {
214
214
  if (!t || !n || !o) return;
215
215
  let r = e[0];
216
216
  if (!r) return;
217
217
  let { width: i, height: a } = r.contentRect, s = Math.round(i), c = Math.round(a);
218
- s === 0 || c === 0 || z(s, c);
219
- }, ae = (t) => {
218
+ s === 0 || c === 0 || B(s, c);
219
+ }, ie = (t) => {
220
220
  let n = t[0];
221
221
  if (!n) return;
222
222
  let r = S;
223
223
  S = n.isIntersecting;
224
224
  let i = e?.getBoundingClientRect(), a = E;
225
225
  if (E = S && !!i && i.width > 0 && i.height > 0, S && !r) {
226
- if (O = !0, e) {
226
+ if (k = !0, e) {
227
227
  let { width: t, height: n } = e.getBoundingClientRect(), r = Math.round(t), i = Math.round(n);
228
- r > 0 && i > 0 && (w === 0 || T === 0 || r !== w || i !== T ? (z(r, i), !a && E && V()) : l && v && d.rootId && (l.needsUpdate = !0, V(), q().catch(console.warn)));
228
+ r > 0 && i > 0 && (w === 0 || T === 0 || r !== w || i !== T ? (B(r, i), !a && E && H()) : l && v && d.rootId && (l.needsUpdate = !0, H(), J().catch(console.warn)));
229
229
  }
230
- C && J();
231
- } else !S && r && Y();
232
- }, B = !1, V = () => {
233
- if (!d.rootId || !l || M) return;
230
+ C && Y();
231
+ } else !S && r && X();
232
+ }, V = !1, H = () => {
233
+ if (!d.rootId || !l || N) return;
234
234
  let e = d.nodes.get(d.rootId);
235
235
  if (e) {
236
236
  if (w === 0 || T === 0) {
237
- B || (B = !0, requestAnimationFrame(() => {
238
- B = !1, w > 0 && T > 0 && V();
237
+ V || (V = !0, requestAnimationFrame(() => {
238
+ V = !1, w > 0 && T > 0 && H();
239
239
  }));
240
240
  return;
241
241
  }
242
- M = !0;
242
+ N = !0;
243
243
  try {
244
- let e = /* @__PURE__ */ new Set(), t = W(d.rootId, /* @__PURE__ */ new Set(), e);
244
+ let e = /* @__PURE__ */ new Set(), t = G(d.rootId, /* @__PURE__ */ new Set(), e);
245
245
  if (t && l) {
246
- let n = R.size !== e.size || ![...R].every((t) => e.has(t)) || ![...e].every((e) => R.has(e));
247
- (n || O) && (l.fragmentNode = null, l.needsUpdate = !0, O = !1, R = e), l.fragmentNode = t, l.needsUpdate = !0;
246
+ let n = z.size !== e.size || ![...z].every((t) => e.has(t)) || ![...e].every((e) => z.has(e));
247
+ (n || k) && (l.fragmentNode = null, l.needsUpdate = !0, k = !1, z = e), l.fragmentNode = t, l.needsUpdate = !0;
248
248
  }
249
249
  } catch (e) {
250
250
  console.error("Error composing shader tree:", e);
251
251
  } finally {
252
- M = !1;
252
+ N = !1;
253
253
  }
254
- S && q().catch(console.warn);
254
+ S && J().catch(console.warn);
255
255
  }
256
- }, oe = (e) => {
256
+ }, ae = (e) => {
257
257
  let t = [];
258
258
  return d.nodes.forEach((n) => {
259
259
  n.parentId === e && t.push(n);
260
260
  }), t;
261
- }, se = (e) => {
261
+ }, oe = (e) => {
262
262
  for (let [t, n] of d.nodes.entries()) if (n.metadata.id === e) return t;
263
263
  return null;
264
- }, H = (e, t, n, r) => {
264
+ }, U = (e, t, n, r) => {
265
265
  if (!t.metadata.mask?.source) return e;
266
- let i = t.metadata.mask.source, a = se(i);
266
+ let i = t.metadata.mask.source, a = oe(i);
267
267
  if (!a) return e;
268
268
  if (r.has(a)) return console.error("Uh oh, looks like you've got a circular dependency in your shader masks."), e;
269
269
  let o = new Set(r);
270
270
  o.add(n);
271
- let s = W(a, o), c = t.metadata.mask.type || "alpha";
271
+ let s = G(a, o), c = t.metadata.mask.type || "alpha";
272
272
  return Ye(e, s, c);
273
- }, U = (e) => {
273
+ }, W = (e) => {
274
274
  let t = d.nodes.get(e);
275
275
  if (!t || !t.metadata.id) return !1;
276
276
  let n = t.metadata.id;
277
277
  for (let e of d.nodes.values()) if (e.metadata.mask?.source === n) return !0;
278
278
  return !1;
279
- }, W = (t, n = /* @__PURE__ */ new Set(), i) => {
279
+ }, G = (t, n = /* @__PURE__ */ new Set(), i) => {
280
280
  if (w === 0 || T === 0) return r(0, 0, 0, 0);
281
281
  let a = d.nodes.get(t);
282
282
  if (!a) return r(0, 0, 0, 0);
@@ -286,7 +286,7 @@ function Qe() {
286
286
  a.beforeRenderCallbacks.push(e);
287
287
  }, c = (e) => {
288
288
  a.afterRenderCallbacks.push(e);
289
- }, l = oe(t);
289
+ }, l = ae(t);
290
290
  if (l.length === 0) {
291
291
  if (a.requiresRTT && !E) return r(0, 0, 0, 0);
292
292
  let i = a.fragmentNodeFunc({
@@ -301,16 +301,16 @@ function Qe() {
301
301
  height: Math.max(512, T)
302
302
  }
303
303
  });
304
- return H(i, a, t, n);
304
+ return U(i, a, t, n);
305
305
  } else {
306
306
  let u = [...l].sort((e, t) => e.metadata.renderOrder - t.metadata.renderOrder), d = a.parentId === null;
307
307
  if (d) {
308
308
  let l;
309
309
  for (let e of u) {
310
310
  let t;
311
- if (e.metadata.opacity === void 0 ? (t = U(e.id) ? 0 : 1, e.opacityUniform.value = t) : (t = e.metadata.opacity, e.opacityUniform.value = t), t === 0 && !U(e.id)) continue;
311
+ if (e.metadata.opacity === void 0 ? (t = W(e.id) ? 0 : 1, e.opacityUniform.value = t) : (t = e.metadata.opacity, e.opacityUniform.value = t), t === 0 && !W(e.id)) continue;
312
312
  i && i.add(e.id);
313
- let o = W(e.id, n, i);
313
+ let o = G(e.id, n, i);
314
314
  if (l === void 0) {
315
315
  let n = a.requiresRTT || t !== 1;
316
316
  l = n ? $(r(1, 1, 1, 0), o, e.metadata.blendMode, e.opacityUniform) : o;
@@ -329,14 +329,14 @@ function Qe() {
329
329
  height: Math.max(512, T)
330
330
  }
331
331
  });
332
- return H(d, a, t, n);
332
+ return U(d, a, t, n);
333
333
  } else {
334
334
  let l;
335
335
  for (let e of u) {
336
336
  let t;
337
- if (e.metadata.opacity === void 0 ? (t = U(e.id) ? 0 : 1, e.opacityUniform.value = t) : (t = e.metadata.opacity, e.opacityUniform.value = t), t === 0 && !U(e.id)) continue;
337
+ if (e.metadata.opacity === void 0 ? (t = W(e.id) ? 0 : 1, e.opacityUniform.value = t) : (t = e.metadata.opacity, e.opacityUniform.value = t), t === 0 && !W(e.id)) continue;
338
338
  i && i.add(e.id);
339
- let o = W(e.id, n, i);
339
+ let o = G(e.id, n, i);
340
340
  if (l === void 0) {
341
341
  let n = a.requiresRTT || t !== 1;
342
342
  l = n ? $(r(1, 1, 1, 0), o, e.metadata.blendMode, e.opacityUniform) : o;
@@ -355,10 +355,10 @@ function Qe() {
355
355
  height: Math.max(512, T)
356
356
  }
357
357
  });
358
- return H(d, a, t, n);
358
+ return U(d, a, t, n);
359
359
  }
360
360
  }
361
- }, ce = (e, t, n, r, i = {}, o) => {
361
+ }, se = (e, t, n, r, i = {}, o) => {
362
362
  let s = 0;
363
363
  if (n !== null) {
364
364
  let e = Array.from(d.nodes.values()).filter((e) => e.parentId === n);
@@ -382,17 +382,17 @@ function Qe() {
382
382
  beforeRenderCallbacks: [],
383
383
  afterRenderCallbacks: []
384
384
  };
385
- d.nodes.set(e, f), n === null && (d.rootId = e), l && v && w > 0 && T > 0 ? (P.includes(e) || P.push(e), F || (F = !0, queueMicrotask(() => {
386
- F = !1, P = [], V();
387
- }))) : l && v && (B || (B = !0, requestAnimationFrame(() => {
388
- B = !1, w > 0 && T > 0 && V();
385
+ d.nodes.set(e, f), n === null && (d.rootId = e), l && v && w > 0 && T > 0 ? (F.includes(e) || F.push(e), I || (I = !0, queueMicrotask(() => {
386
+ I = !1, F = [], H();
387
+ }))) : l && v && (V || (V = !0, requestAnimationFrame(() => {
388
+ V = !1, w > 0 && T > 0 && H();
389
389
  })));
390
- }, le = (e, t, n) => {
390
+ }, ce = (e, t, n) => {
391
391
  let r = d.nodes.get(e);
392
392
  if (!r || !r.uniforms) return;
393
393
  let i = r.uniforms[t];
394
- !i || !i.uniform || (i.uniform.value = n, S && q());
395
- }, ue = (e, t) => {
394
+ !i || !i.uniform || (i.uniform.value = n, S && J());
395
+ }, le = (e, t) => {
396
396
  let n = d.nodes.get(e);
397
397
  if (!n) return;
398
398
  let r = !1;
@@ -400,10 +400,10 @@ function Qe() {
400
400
  let e = n.metadata.opacity === 0, i = t.opacity === 0;
401
401
  n.metadata.opacity = t.opacity, n.opacityUniform.value = t.opacity, e !== i && (r = !0);
402
402
  }
403
- t.renderOrder !== void 0 && n.metadata.renderOrder !== t.renderOrder && (n.metadata.renderOrder = t.renderOrder, r = !0), t.id !== void 0 && n.metadata.id !== t.id && (n.metadata.id = t.id, r = !0), t.mask !== void 0 && (n.metadata.mask?.source !== t.mask?.source || n.metadata.mask?.type !== t.mask?.type) && (n.metadata.mask = t.mask, r = !0), r && l && v ? (I.includes(e) || I.push(e), L || (L = !0, queueMicrotask(() => {
404
- L = !1, I = [], V();
405
- }))) : S && q();
406
- }, G = (e) => {
403
+ t.renderOrder !== void 0 && n.metadata.renderOrder !== t.renderOrder && (n.metadata.renderOrder = t.renderOrder, r = !0), t.id !== void 0 && n.metadata.id !== t.id && (n.metadata.id = t.id, r = !0), t.mask !== void 0 && (n.metadata.mask?.source !== t.mask?.source || n.metadata.mask?.type !== t.mask?.type) && (n.metadata.mask = t.mask, r = !0), r && l && v ? (L.includes(e) || L.push(e), R || (R = !0, queueMicrotask(() => {
404
+ R = !1, L = [], H();
405
+ }))) : S && J();
406
+ }, K = (e) => {
407
407
  if (!d.nodes.has(e)) return;
408
408
  let t = d.nodes.get(e);
409
409
  if (t && t.cleanupCallbacks.length > 0) for (let n of t.cleanupCallbacks) try {
@@ -411,17 +411,17 @@ function Qe() {
411
411
  } catch (t) {
412
412
  console.error(`Error executing cleanup callback for node ${e}:`, t);
413
413
  }
414
- let n = oe(e);
415
- for (let e of n) G(e.id);
416
- d.rootId === e && (d.rootId = null), d.nodes.delete(e), l && v && V();
417
- }, de = (e) => {
414
+ let n = ae(e);
415
+ for (let e of n) K(e.id);
416
+ d.rootId === e && (d.rootId = null), d.nodes.delete(e), l && v && H();
417
+ }, ue = (e) => {
418
418
  let t = {
419
419
  deltaTime: e,
420
420
  pointer: {
421
- x: k,
422
- y: A
421
+ x: A,
422
+ y: j
423
423
  },
424
- pointerActive: j,
424
+ pointerActive: M,
425
425
  dimensions: {
426
426
  width: w,
427
427
  height: T
@@ -432,14 +432,14 @@ function Qe() {
432
432
  } catch (t) {
433
433
  console.error(`Error executing before render callback for node ${e.id}:`, t);
434
434
  }
435
- }, K = (e) => {
435
+ }, q = (e) => {
436
436
  let t = {
437
437
  deltaTime: e,
438
438
  pointer: {
439
- x: k,
440
- y: A
439
+ x: A,
440
+ y: j
441
441
  },
442
- pointerActive: j,
442
+ pointerActive: M,
443
443
  dimensions: {
444
444
  width: w,
445
445
  height: T
@@ -450,29 +450,29 @@ function Qe() {
450
450
  } catch (t) {
451
451
  console.error(`Error executing after render callback for node ${e.id}:`, t);
452
452
  }
453
- }, q = async () => {
453
+ }, J = async () => {
454
454
  if (!v || !t || !i || !n || !l || w === 0 || T === 0) return;
455
- let e = performance.now(), r = D > 0 ? (e - D) / 1e3 : .016, a = Math.min(r, .1);
456
- D = e, de(a);
455
+ let e = performance.now(), r = O > 0 ? (e - O) / 1e3 : .016, a = Math.min(r, .1);
456
+ O = e, ue(a);
457
457
  try {
458
- if (M) return;
458
+ if (N) return;
459
459
  t instanceof te ? await t.renderAsync(i, n).then(() => {
460
- v && K(a);
460
+ v && q(a);
461
461
  }).catch((e) => {
462
462
  console.error("WebGPU render error:", e);
463
- }) : (t.render(i, n), K(a));
463
+ }) : (t.render(i, n), q(a));
464
464
  } catch (e) {
465
465
  console.error("Render frame error:", e);
466
466
  }
467
- }, J = () => {
467
+ }, Y = () => {
468
468
  if (p || !C || !S) return;
469
469
  let e = () => {
470
- p = requestAnimationFrame(e), q().catch(console.warn);
470
+ p = requestAnimationFrame(e), J().catch(console.warn);
471
471
  };
472
472
  e();
473
- }, Y = () => {
473
+ }, X = () => {
474
474
  p && (cancelAnimationFrame(p), p = null);
475
- }, X = (t) => {
475
+ }, de = (t) => {
476
476
  if (!e) return;
477
477
  let n, r;
478
478
  if ("touches" in t) {
@@ -480,25 +480,25 @@ function Qe() {
480
480
  n = t.touches[0].clientX, r = t.touches[0].clientY;
481
481
  } else n = t.clientX, r = t.clientY;
482
482
  let i = e.getBoundingClientRect(), a = (n - i.left) / i.width, o = (r - i.top) / i.height;
483
- k = a, A = o;
483
+ A = a, j = o;
484
484
  }, Z = (e) => {
485
- X(e);
485
+ de(e);
486
486
  }, fe = (e) => {
487
- X(e);
487
+ de(e);
488
488
  }, pe = () => {
489
- j = !1, q().catch(console.warn);
489
+ M = !1, J().catch(console.warn);
490
490
  }, me = () => {
491
- j = !1, q().catch(console.warn);
491
+ M = !1, J().catch(console.warn);
492
492
  }, he = () => {
493
- j = !0, q().catch(console.warn);
493
+ M = !0, J().catch(console.warn);
494
494
  }, ge = () => {
495
- j = !0, q().catch(console.warn);
495
+ M = !0, J().catch(console.warn);
496
496
  }, _e = async ({ canvas: a }) => {
497
497
  if (v || y) return;
498
498
  y = !0, x = new AbortController();
499
499
  let d = x;
500
500
  try {
501
- if (e = a, i = new ee(), i.background = null, n = new c(-1, 1, 1, -1, .1, 10), n.position.z = 1, n.lookAt(0, 0, 0), N || (window.addEventListener("mousemove", Z), window.addEventListener("touchmove", fe), window.addEventListener("mouseup", pe), window.addEventListener("touchend", me), a.addEventListener("mousedown", he), a.addEventListener("touchstart", ge), N = !0), d.signal.aborted) return;
501
+ if (e = a, i = new ee(), i.background = null, n = new c(-1, 1, 1, -1, .1, 10), n.position.z = 1, n.lookAt(0, 0, 0), P || (window.addEventListener("mousemove", Z), window.addEventListener("touchmove", fe), window.addEventListener("mouseup", pe), window.addEventListener("touchend", me), a.addEventListener("mousedown", he), a.addEventListener("touchstart", ge), P = !0), d.signal.aborted) return;
502
502
  try {
503
503
  if (t = new te({
504
504
  canvas: a,
@@ -515,11 +515,11 @@ function Qe() {
515
515
  if (d.signal.aborted) return;
516
516
  t.setPixelRatio(Math.min(window.devicePixelRatio, 2)), t.outputColorSpace = u, l = new g({ transparent: !0 }), l.fragmentNode = r(0, 0, 0, 0);
517
517
  let p = new s(2, 2);
518
- o = new f(p, l), i.add(o), m = new ResizeObserver(ie), m.observe(a), _ = new IntersectionObserver(ae, { threshold: 0 }), _.observe(a);
518
+ o = new f(p, l), i.add(o), m = new ResizeObserver(re), m.observe(a), _ = new IntersectionObserver(ie, { threshold: 0 }), _.observe(a);
519
519
  let h = a.getBoundingClientRect();
520
- S = h.width > 0 && h.height > 0 && h.top < window.innerHeight && h.bottom > 0 && h.left < window.innerWidth && h.right > 0, E = S && h.width > 0 && h.height > 0, C = !re();
520
+ S = h.width > 0 && h.height > 0 && h.top < window.innerHeight && h.bottom > 0 && h.left < window.innerWidth && h.right > 0, E = S && h.width > 0 && h.height > 0, C = !ne();
521
521
  let { width: y, height: x } = a.getBoundingClientRect(), w = Math.round(y), T = Math.round(x);
522
- w > 0 && T > 0 ? (z(w, T), b = !0, await q()) : b = !1, C && S && J(), d.signal.aborted || (v = !0);
522
+ w > 0 && T > 0 ? (B(w, T), b = !0, await J()) : b = !1, C && S && Y(), d.signal.aborted || (v = !0);
523
523
  } catch (e) {
524
524
  console.error("[Shaders] Initialization error:", e);
525
525
  } finally {
@@ -528,7 +528,7 @@ function Qe() {
528
528
  }, ve = () => {
529
529
  !Ze() || Xe || (console.warn("Shaders is running in development mode. Please purchase a license at https://shaders.com to use it in production."), Xe = !0);
530
530
  }, ye = () => {
531
- if (x && x.abort(), m && (m.disconnect(), m = null), _ && (_.disconnect(), _ = null), N && (e && (e.removeEventListener("mousedown", he), e.removeEventListener("touchstart", ge)), window && (window.removeEventListener("mousemove", Z), window.removeEventListener("touchmove", fe), window.removeEventListener("mouseup", pe), window.removeEventListener("touchend", me)), N = !1), Y(), d.nodes.clear(), d.rootId = null, d.idToNodeId.clear(), P = [], F = !1, I = [], L = !1, o) {
531
+ if (x && x.abort(), m && (m.disconnect(), m = null), _ && (_.disconnect(), _ = null), P && (e && (e.removeEventListener("mousedown", he), e.removeEventListener("touchstart", ge)), window && (window.removeEventListener("mousemove", Z), window.removeEventListener("touchmove", fe), window.removeEventListener("mouseup", pe), window.removeEventListener("touchend", me)), P = !1), X(), d.nodes.clear(), d.rootId = null, d.idToNodeId.clear(), F = [], I = !1, L = [], R = !1, o) {
532
532
  i && i.remove(o);
533
533
  try {
534
534
  o.geometry && typeof o.geometry.dispose == "function" && o.geometry.dispose();
@@ -540,17 +540,19 @@ function Qe() {
540
540
  if (t && typeof t.dispose == "function") try {
541
541
  t.dispose();
542
542
  } catch {}
543
- e = null, t = null, n = null, i = null, o = null, l = null, v = !1, y = !1, b = !1, x = null, w = 0, T = 0, S = !1, C = !0, k = .5, A = .5, j = !1;
543
+ e = null, t = null, n = null, i = null, o = null, l = null, v = !1, y = !1, b = !1, x = null, w = 0, T = 0, S = !1, C = !0, A = .5, j = .5, M = !1;
544
544
  };
545
545
  return {
546
546
  initialize: _e,
547
547
  cleanup: ye,
548
- registerNode: ce,
549
- removeNode: G,
550
- updateUniformValue: le,
551
- updateNodeMetadata: ue,
548
+ registerNode: se,
549
+ removeNode: K,
550
+ updateUniformValue: ce,
551
+ updateNodeMetadata: le,
552
552
  showLicenseWarning: ve,
553
- isInitialized: () => v
553
+ isInitialized: () => v,
554
+ startAnimation: Y,
555
+ stopAnimation: X
554
556
  };
555
557
  }
556
558
  const { uniform: $e } = _;
@@ -572,40 +574,40 @@ const { vec2: tt, fract: nt, sin: rt, dot: it } = _, { vec2: at } = _, ot = () =
572
574
  Blur: w,
573
575
  Bulge: T,
574
576
  Checkerboard: E,
575
- ChromaFlow: ne,
576
- ChromaticAberration: D,
577
- Circle: O,
578
- ColorMapping: k,
579
- CRTScreen: A,
580
- Dither: j,
581
- DotGrid: M,
582
- Duotone: N,
583
- Exposure: P,
584
- FilmGrain: F,
585
- FloatingParticles: I,
586
- GlassTiles: L,
587
- Glitch: R,
588
- Glow: re,
589
- Godrays: z,
590
- Grayscale: ie,
591
- Grid: ae,
592
- GridDistortion: B,
593
- Group: V,
594
- HalfTone: oe,
595
- HueShift: se,
596
- ImageTexture: H,
597
- Invert: U,
598
- LinearBlur: W,
599
- LinearGradient: ce,
600
- Liquify: le,
601
- Mirror: ue,
602
- PerlinNoise: G,
603
- Pixelate: de,
604
- Posterize: K,
605
- ProgressiveBlur: q,
606
- RadialBlur: J,
607
- RadialGradient: Y,
608
- Ripples: X,
577
+ ChromaFlow: D,
578
+ ChromaticAberration: O,
579
+ Circle: k,
580
+ ColorMapping: A,
581
+ CRTScreen: j,
582
+ Dither: M,
583
+ DotGrid: N,
584
+ Duotone: P,
585
+ Exposure: F,
586
+ FilmGrain: I,
587
+ FloatingParticles: L,
588
+ GlassTiles: R,
589
+ Glitch: z,
590
+ Glow: ne,
591
+ Godrays: B,
592
+ Grayscale: re,
593
+ Grid: ie,
594
+ GridDistortion: V,
595
+ Group: H,
596
+ HalfTone: ae,
597
+ HueShift: oe,
598
+ ImageTexture: U,
599
+ Invert: W,
600
+ LinearBlur: G,
601
+ LinearGradient: se,
602
+ Liquify: ce,
603
+ Mirror: le,
604
+ PerlinNoise: K,
605
+ Pixelate: ue,
606
+ Posterize: q,
607
+ ProgressiveBlur: J,
608
+ RadialBlur: Y,
609
+ RadialGradient: X,
610
+ Ripples: de,
609
611
  Saturation: Z,
610
612
  SimplexNoise: fe,
611
613
  SineWave: pe,
@@ -45,8 +45,8 @@ var f = /* @__PURE__ */ r({
45
45
  renderOrder: o.renderOrder
46
46
  }, m, e);
47
47
  }, x = () => {
48
- let t = i();
49
- t.run(() => {
48
+ let e = i();
49
+ e.run(() => {
50
50
  Object.entries(m).forEach(([e, { uniform: t, transform: n }]) => {
51
51
  d(() => o[e], (r) => {
52
52
  if (t && t.value !== void 0) {
@@ -72,10 +72,10 @@ var f = /* @__PURE__ */ r({
72
72
  renderOrder: o.renderOrder
73
73
  });
74
74
  }, { deep: !0 }), y && d(y, () => {
75
- console.log(`[${e.name}] Re-registering due to renderer reset`), b();
75
+ b();
76
76
  }), b();
77
77
  }), s(() => {
78
- t.stop();
78
+ e.stop();
79
79
  });
80
80
  };
81
81
  return x(), s(() => {
@@ -46,8 +46,8 @@ var f = /* @__PURE__ */ r({
46
46
  renderOrder: o.renderOrder
47
47
  }, m, e);
48
48
  }, x = () => {
49
- let t = i();
50
- t.run(() => {
49
+ let e = i();
50
+ e.run(() => {
51
51
  Object.entries(m).forEach(([e, { uniform: t, transform: n }]) => {
52
52
  d(() => o[e], (r) => {
53
53
  if (t && t.value !== void 0) {
@@ -73,10 +73,10 @@ var f = /* @__PURE__ */ r({
73
73
  renderOrder: o.renderOrder
74
74
  });
75
75
  }, { deep: !0 }), y && d(y, () => {
76
- console.log(`[${e.name}] Re-registering due to renderer reset`), b();
76
+ b();
77
77
  }), b();
78
78
  }), s(() => {
79
- t.stop();
79
+ e.stop();
80
80
  });
81
81
  };
82
82
  return x(), s(() => {
@@ -57,8 +57,8 @@ var f = /* @__PURE__ */ r({
57
57
  renderOrder: o.renderOrder
58
58
  }, m, e);
59
59
  }, x = () => {
60
- let t = i();
61
- t.run(() => {
60
+ let e = i();
61
+ e.run(() => {
62
62
  Object.entries(m).forEach(([e, { uniform: t, transform: n }]) => {
63
63
  d(() => o[e], (r) => {
64
64
  if (t && t.value !== void 0) {
@@ -84,10 +84,10 @@ var f = /* @__PURE__ */ r({
84
84
  renderOrder: o.renderOrder
85
85
  });
86
86
  }, { deep: !0 }), y && d(y, () => {
87
- console.log(`[${e.name}] Re-registering due to renderer reset`), b();
87
+ b();
88
88
  }), b();
89
89
  }), s(() => {
90
- t.stop();
90
+ e.stop();
91
91
  });
92
92
  };
93
93
  return x(), s(() => {
@@ -44,8 +44,8 @@ var f = /* @__PURE__ */ r({
44
44
  renderOrder: o.renderOrder
45
45
  }, m, e);
46
46
  }, x = () => {
47
- let t = i();
48
- t.run(() => {
47
+ let e = i();
48
+ e.run(() => {
49
49
  Object.entries(m).forEach(([e, { uniform: t, transform: n }]) => {
50
50
  d(() => o[e], (r) => {
51
51
  if (t && t.value !== void 0) {
@@ -71,10 +71,10 @@ var f = /* @__PURE__ */ r({
71
71
  renderOrder: o.renderOrder
72
72
  });
73
73
  }, { deep: !0 }), y && d(y, () => {
74
- console.log(`[${e.name}] Re-registering due to renderer reset`), b();
74
+ b();
75
75
  }), b();
76
76
  }), s(() => {
77
- t.stop();
77
+ e.stop();
78
78
  });
79
79
  };
80
80
  return x(), s(() => {
@@ -45,8 +45,8 @@ var f = /* @__PURE__ */ r({
45
45
  renderOrder: o.renderOrder
46
46
  }, m, e);
47
47
  }, x = () => {
48
- let t = i();
49
- t.run(() => {
48
+ let e = i();
49
+ e.run(() => {
50
50
  Object.entries(m).forEach(([e, { uniform: t, transform: n }]) => {
51
51
  d(() => o[e], (r) => {
52
52
  if (t && t.value !== void 0) {
@@ -72,10 +72,10 @@ var f = /* @__PURE__ */ r({
72
72
  renderOrder: o.renderOrder
73
73
  });
74
74
  }, { deep: !0 }), y && d(y, () => {
75
- console.log(`[${e.name}] Re-registering due to renderer reset`), b();
75
+ b();
76
76
  }), b();
77
77
  }), s(() => {
78
- t.stop();
78
+ e.stop();
79
79
  });
80
80
  };
81
81
  return x(), s(() => {