//@flow import React from "react"; import classNames from "classnames"; import { Link } from "react-router-dom"; export type ButtonProps = { label: string, loading?: boolean, disabled?: boolean, action?: (event: Event) => void, link?: string, fullWidth?: boolean, className?: string }; type Props = ButtonProps & { type: string }; class Button extends React.Component { static defaultProps = { type: "default" }; renderButton = () => { const { label, loading, disabled, type, action, fullWidth, className } = this.props; const loadingClass = loading ? "is-loading" : ""; const fullWidthClass = fullWidth ? "is-fullwidth" : ""; return ( ); }; render() { const { link } = this.props; if (link) { return {this.renderButton()}; } else { return this.renderButton(); } } } export default Button;