import * as React from 'react';
import {
  BaseButton,
  type BaseButtonProps,
  baseButtonVariants,
} from './BaseButton';

import { cn } from '@/utils';

import styles from './Button.module.css';

export type ButtonProps = BaseButtonProps & {};

const buttonVariants = baseButtonVariants;

const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(
  ({ className, ...props }, ref) => {
    return (
      <BaseButton
        ref={ref}
        className={cn(styles.Button, buttonVariants, className)}
        {...props}
      />
    );
  },
);

export { Button, buttonVariants };
