import React, { useState, useEffect } from 'react'; import { motion, AnimatePresence } from 'motion/react'; import { X, Check } from 'lucide-react'; import { cn } from '@/lib/utils'; export type AvatarConfig = { id: string; hue: number; saturate: number; glowColor: string; }; export const AURAS: (AvatarConfig & { label: string })[] = [ { id: 'default', label: 'Classic', glowColor: 'transparent', hue: 0, saturate: 100 }, { id: 'neon-cyber', label: 'Neon Cyber', glowColor: '#06b6d4', hue: 160, saturate: 150 }, { id: 'crimson', label: 'Crimson', glowColor: '#e11d48', hue: 330, saturate: 130 }, { id: 'matrix', label: 'Matrix', glowColor: '#22c55e', hue: 100, saturate: 200 }, { id: 'golden', label: 'Golden', glowColor: '#fbbf24', hue: 45, saturate: 140 }, { id: 'void', label: 'The Void', glowColor: '#a855f7', hue: 280, saturate: 180 }, ]; export default function AvatarCustomizerModal({ isOpen, onClose, initialConfig, onSave, }: { isOpen: boolean; onClose: () => void; initialConfig: AvatarConfig; onSave: (config: AvatarConfig) => void; }) { const [activeTab, setActiveTab] = useState('aura'); const [selectedConfig, setSelectedConfig] = useState(initialConfig); useEffect(() => { if (isOpen) setSelectedConfig(initialConfig); }, [isOpen, initialConfig]); return ( {isOpen && (
{/* Header */}

Customize Avatar

{/* Content Split */}
{/* Avatar Stage */}
Avatar Preview
{/* Drawer Menu */}
{['Aura'].map(tab => ( ))}
{AURAS.map(aura => ( ))}
)}
); }