import React, { forwardRef } from 'react'; import { cn } from '@/utils/utils'; import { NEUMORPHISM } from '@/styles/Neumorphism'; // Couleurs de texte pour chaque variante const variantStyles = { primary: "text-[#090909] dark:text-white font-bold", secondary: "text-slate-500 dark:text-slate-400 font-bold", danger: "text-rose-600 dark:text-rose-400 font-bold", success: "text-emerald-600 dark:text-emerald-400 font-bold", outline: "text-slate-700 dark:text-slate-200 border-slate-300 dark:border-slate-700", ghost: "text-slate-600 dark:text-slate-400 border-transparent shadow-none dark:shadow-none", }; export interface ButtonProps extends React.ButtonHTMLAttributes { variant?: keyof typeof variantStyles; size?: keyof typeof NEUMORPHISM.sizeStyles; isLoading?: boolean; leftIcon?: React.ReactNode; rightIcon?: React.ReactNode; } export const Button = forwardRef( ( { className, variant = 'primary', size = 'md', isLoading = false, leftIcon, rightIcon, children, disabled, type = "button", ...props }, ref ) => { return ( ); } ); Button.displayName = "Button";