'use client'; import * as React from 'react'; import { motion, useReducedMotion } from 'framer-motion'; type Props = { className?: string; // e.g. "w-full h-80" bg?: string; // default white }; /** Palette */ const ACCENT = '#00b8db'; const STROKE = '#111827'; const GRAY = '#9CA3AF'; const GRAY_LT = '#E5E7EB'; /* ---------- small generic icons (no brands) ---------- */ const IconSquare = () => ( ); const IconTriangle = () => ( ); const IconHex = () => ( ); const IconBolt = () => ( ); const IconPlay = () => ( ); const IconDB = () => ( <> ); /* icon inside white circular badge */ function Badge({ children }: { children: React.ReactNode }) { return ( <> {children} ); } /* ---------- central cloud ---------- */ function Cloud({ pulse = true }: { pulse?: boolean }) { const prefersReduced = useReducedMotion(); return ( {/* subtle accent aura */} ); } /* a small packet line from center to a node */ function Beam({ x2, y2, delay = 0, }: { x2: number; y2: number; delay?: number; }) { const prefersReduced = useReducedMotion(); return ( ); } export default function ContentDistribution({ className, bg = '#ffffff' }: Props) { const W = 900; const H = 560; // ring radii const rings = [110, 190, 270]; // positions (angle degrees) for badges on rings const layout = [ { r: rings[1], a: -20, icon: }, { r: rings[2], a: 20, icon: }, { r: rings[0], a: 155, icon: }, { r: rings[2], a: -145, icon: }, { r: rings[1], a: 210, icon: }, { r: rings[0], a: 60, icon: }, ]; const prefersReduced = useReducedMotion(); return ( ); }