'use client'; import * as React from 'react'; import { motion, useReducedMotion } from 'framer-motion'; type Props = { className?: string; // e.g. "w-full h-72" bg?: string; // default white }; /** Palette (gray/black + accent only) */ const ACCENT = '#00b8db'; const STROKE = '#111827'; // black-ish const GRAY = '#9CA3AF'; const GRAY_LT = '#E5E7EB'; function Envelope({ x, y, w = 88, h = 56, fill = GRAY_LT, accent = false, delay = 0, duration = 1.6, path = 'none', // 'left1' | 'left2' | 'rightTop' | 'rightBottom' | 'none' reverse = false, }: { x: number; y: number; w?: number; h?: number; fill?: string; accent?: boolean; delay?: number; duration?: number; path?: 'left1'|'left2'|'rightTop'|'rightBottom'|'none'; reverse?: boolean; }) { const prefersReduced = useReducedMotion(); // simple keyframe paths (straight line segments) const paths: Record = { left1: { x: [x, 380], y: [y, 220] }, left2: { x: [x, 380], y: [y, 220] }, rightTop: { x: [380, 720], y: [220, 150] }, rightBottom: { x: [380, 720], y: [220, 290] }, none: { x: [x], y: [y] }, }; const k = paths[path]; return ( {/* envelope body */} {/* flap */} ); } export default function MessageBus({ className, bg = '#ffffff' }: Props) { const W = 900; const H = 460; return ( ); }