/** * This component is a template for a clickable button that wraps the application style */ import React, { ReactNode, SyntheticEvent } from 'react'; interface FabButtonProps { onClick?: (event: SyntheticEvent) => void, icon?: ReactNode, className?: string, disabled?: boolean, } export const FabButton: React.FC = ({ onClick, icon, className, disabled, children }) => { /** * Check if the current component was provided an icon to display */ const hasIcon = (): boolean => { return !!icon; } /** * Handle the action of the button */ const handleClick = (e: SyntheticEvent): void => { if (typeof onClick === 'function') { onClick(e); } } return ( ); }