Skip to content
Snippets Groups Projects
Button.tsx 700 B
Newer Older
  • Learn to ignore specific revisions
  • Jacopo Gasparetto's avatar
    Jacopo Gasparetto committed
    import { ReactNode } from "react"
    
    interface ButtonProps {
      type?: "button" | "reset" | "submit"
    
    Jacopo Gasparetto's avatar
    Jacopo Gasparetto committed
      className?: string,
    
    Jacopo Gasparetto's avatar
    Jacopo Gasparetto committed
      title: string,
      icon?: ReactNode
    
      onClick?: () => void
    
    Jacopo Gasparetto's avatar
    Jacopo Gasparetto committed
    }
    
    export const Button = (props: ButtonProps) => {
      return (
    
    Jacopo Gasparetto's avatar
    Jacopo Gasparetto committed
        <div className={props.className}>
          <button
    
    Jacopo Gasparetto's avatar
    Jacopo Gasparetto committed
            className="border border-colorounded p-4 hover:bg-neutral-200 w-full h-full"
    
    Jacopo Gasparetto's avatar
    Jacopo Gasparetto committed
            type={props.type}
            onClick={props.onClick}
          >
            <div className="flex">
              {props.icon ?
                <div className="w-5">{props.icon}</div>
                : null}
              <div className="mx-auto">
                {props.title}
              </div>
    
    Jacopo Gasparetto's avatar
    Jacopo Gasparetto committed
            </div>
    
    
    Jacopo Gasparetto's avatar
    Jacopo Gasparetto committed
          </button>
        </div>