import React, { forwardRef } from 'react';
import Tooltip from 'components/Elements/Tooltip/Tooltip';
const Button = forwardRef(
(
{ icon, label, type, iconPlacement, onClick, active, disabled, tooltipTitle, tooltipKey, href, style, badge },
ref,
) => {
let className;
switch (type) {
case 'settings':
className = 'btn-settings';
break;
case 'secondary':
className = 'btn-secondary';
break;
case 'icon':
className = 'btn-icon';
break;
case 'navigation':
className = 'btn-navigation';
break;
case 'collection':
className = 'btn-collection';
break;
case 'linkIconButton':
className = 'btn-icon';
break;
case 'linkButton':
className = 'btn-settings';
break;
default:
className = 'btn-default';
}
if (iconPlacement === 'right') {
className += ' flowReverse';
}
if (active) {
className += ` ${className}-active`;
}
const button = (
);
const linkButton = (
{icon}
{label}
{badge && {badge}}
);
const linkIconButton = (
{icon}
{label}
{badge && {badge}}
);
switch (type) {
case 'linkIconButton':
return linkIconButton;
case 'linkButton':
return linkButton;
case 'icon':
return (
{button}
);
default:
return button;
}
},
);
Button.displayName = 'Button';
export { Button as default, Button };