import { ReactNode } from 'react';

import { cn } from '@/lib/helper';

interface AlertProps {
  variant?: 'outline' | 'dash' | 'soft';
  color?: 'info' | 'success' | 'warning' | 'error';
  children?: ReactNode;
  className?: string;
}

const Alert = ({ children, variant, color, className }: AlertProps) => {
  const alertBaseClassName = cn('alert', {
    'alert-soft': variant === 'soft',
    'alert-outline': variant === 'outline',
    'alert-dash': variant === 'dash',

    'alert-info': color === 'info',
    'alert-success': color === 'success',
    'alert-warning': color === 'warning',
    'alert-error': color === 'error',
  });

  return <div className={cn(alertBaseClassName, className)}>{children}</div>;
};

export default Alert;
