aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/packages/ui-new/src/components/particle-background.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'packages/ui-new/src/components/particle-background.tsx')
-rw-r--r--packages/ui-new/src/components/particle-background.tsx63
1 files changed, 0 insertions, 63 deletions
diff --git a/packages/ui-new/src/components/particle-background.tsx b/packages/ui-new/src/components/particle-background.tsx
deleted file mode 100644
index 2e0b15a..0000000
--- a/packages/ui-new/src/components/particle-background.tsx
+++ /dev/null
@@ -1,63 +0,0 @@
-import { useEffect, useRef } from "react";
-import { SaturnEffect } from "../lib/effects/SaturnEffect";
-
-export function ParticleBackground() {
- const canvasRef = useRef<HTMLCanvasElement | null>(null);
- const effectRef = useRef<SaturnEffect | null>(null);
-
- useEffect(() => {
- const canvas = canvasRef.current;
- if (!canvas) return;
-
- // Instantiate SaturnEffect and attach to canvas
- let effect: SaturnEffect | null = null;
- try {
- effect = new SaturnEffect(canvas);
- effectRef.current = effect;
- } catch (err) {
- // If effect fails, silently degrade (keep background blank)
- // eslint-disable-next-line no-console
- console.warn("SaturnEffect initialization failed:", err);
- }
-
- const resizeHandler = () => {
- if (effectRef.current) {
- try {
- effectRef.current.resize(window.innerWidth, window.innerHeight);
- } catch {
- // ignore
- }
- }
- };
-
- window.addEventListener("resize", resizeHandler);
-
- // Expose getter for HomeView interactions (getSaturnEffect)
- // HomeView will call window.getSaturnEffect()?.handleMouseDown/Move/Up
- (
- window as unknown as { getSaturnEffect?: () => SaturnEffect | null }
- ).getSaturnEffect = () => effectRef.current;
-
- return () => {
- window.removeEventListener("resize", resizeHandler);
- if (effectRef.current) {
- try {
- effectRef.current.destroy();
- } catch {
- // ignore
- }
- }
- effectRef.current = null;
- (
- window as unknown as { getSaturnEffect?: () => SaturnEffect | null }
- ).getSaturnEffect = undefined;
- };
- }, []);
-
- return (
- <canvas
- ref={canvasRef}
- className="absolute inset-0 z-0 pointer-events-none"
- />
- );
-}