import { Button as ButtonRAC } from 'react-aria-components'

import { variants } from './variants'

import type { ButtonProps } from './types'

export function Button({
  variant,
  color,
  size,
  wrapping,

  typography,
  className,

  ...props
}: ButtonProps) {
  const classNames = variants({
    variant,
    color,
    size,
    wrapping,

    typography,
    className,
  })

  return <ButtonRAC {...props} className={classNames} />
}
