/**
 * Proxy d'icônes : tous les composants sont importés depuis @phosphor-icons/react
 * mais ré-exportés sous les noms historiques utilisés dans le code (issus de Lucide).
 *
 * Pourquoi : Phosphor donne plus de caractère que Lucide (perçu comme « AI default »),
 * tout en gardant une API compatible (`className`, taille héritée du CSS).
 *
 * Si tu veux changer la signature d'une icône (par exemple passer une `Search` à
 * `weight="bold"`), tu peux soit le faire à l'appel, soit créer un wrapper dédié ici.
 *
 * Default weight = "regular" (stroke fin, look premium). À ajuster localement
 * si une icône paraît trop discrète dans un contexte précis.
 */

// Le type Icon n'est pas re-exporté par le sous-module /dist/ssr en v2.x.
// On le tire depuis l'entrée principale (import type only, donc aucun JS embarqué).
import type { Icon } from "@phosphor-icons/react";

export type LucideIcon = Icon;

export {
  // Navigation et arrows
  ArrowRight,
  ArrowLeft,
  ArrowUpRight,
  ArrowDownRight,
  CaretDown as ChevronDown,
  CaretUp as ChevronUp,
  CaretRight as ChevronRight,
  CaretLeft as ChevronLeft,
  House as Home,

  // Actions de base
  Plus,
  Minus,
  Check,
  X,
  Trash as Trash2,
  PencilSimple as Pencil,
  Copy,
  FloppyDisk as Save,
  Download,
  Upload,
  Paperclip,
  PaperPlaneTilt as Send,
  ArrowsClockwise as RefreshCw,
  MagnifyingGlass as Search,
  Faders as SlidersHorizontal,
  Faders as Settings2,
  Gear as Settings,
  DotsThree as MoreHorizontal,
  DotsThreeVertical as MoreVertical,

  // Statuts et notifications
  Warning as AlertCircle,
  WarningCircle as AlertTriangle,
  Info,
  Question as HelpCircle,
  CheckCircle as CheckCircle2,
  CircleNotch as Loader2,
  Bell,
  Sparkle as Sparkles,

  // Communication
  Envelope as Mail,
  ChatCircle as MessageCircle,
  ChatCircleDots as MessageSquarePlus,
  Phone,

  // Vue, regard, métriques
  Eye,
  EyeSlash as EyeOff,
  Target,
  CursorClick as MousePointerClick,
  TrendUp as TrendingUp,
  TrendDown as TrendingDown,
  ChartLine as LineChart,
  ChartBar as BarChart3,
  ChartPie as PieChart,
  Gauge,
  Pulse as Activity,

  // Personnes et identité
  User,
  Users,
  UserPlus,
  UserGear as UserCog,
  UserCircle,
  Calculator,

  // Sécurité et confiance
  Lock,
  LockOpen as Unlock,
  Key as KeyRound,
  Shield,
  ShieldCheck,
  Fingerprint,

  // Lieux et navigation physique
  MapPin,
  Compass,
  Globe,
  Buildings as Building2,
  Storefront,

  // Devices
  DeviceMobile as Smartphone,
  DeviceTablet as Tablet,
  Monitor,
  Desktop,
  Cpu,

  // Stockage et infra
  HardDrives as Server,
  Database,
  Cloud,
  Cloud as CloudCog,
  Stack as Layers,
  Package,
  Cube as Box,

  // Documents et fichiers
  FileText,
  File,
  Files,
  Folder,
  FolderOpen,
  Receipt,
  CreditCard,

  // Commerce
  ShoppingBag,
  ShoppingCart,
  Wallet,
  CurrencyEur as Euro,
  Tag,

  // Travail et organisation
  Briefcase,
  Wrench,
  Lifebuoy as LifeBuoy,
  Handshake,
  Lightbulb,
  Rocket,
  Lightning as Zap,
  Headphones,
  SignOut as LogOut,
  SignIn as LogIn,
  Layout,
  SquaresFour as LayoutDashboard,
  Network,
  List as Menu,
  ListBullets as ListIcon,

  // Création et design
  Palette,
  MagicWand as Wand2,
  Star,

  // Emotion / soft
  Heart,
  HeartStraight,
  ArrowSquareOut as ExternalLink,

  // Time
  Clock,
  Calendar,
  CalendarBlank,
  Timer,

  // Code et données
  Code,
  Terminal,
  Plug,

  // Médias
  Camera,
  Image,
  Microphone,
  Video,

  // Link icon (différent de next/link composant)
  Link as LinkIcon,
} from "@phosphor-icons/react/dist/ssr";
