import { FC, PropsWithChildren } from 'react';
import { useHistory } from 'react-router-dom';
import HelpIcon from '@servicetitan/anvil2/assets/icons/material/round/help.svg';
import { Chip, Flex, Tooltip as TooltipA2, Button } from '@servicetitan/anvil2';
import { ButtonAppearance } from '@servicetitan/hammer-react/dist/types/props';
import { BrandAction } from '../../../utils/interfaces';
import { BrandActionChipColor, BrandActionChipLabel } from '../../../utils/mappers';
import { ActionStatus } from '../../../enums/brands';
export const SingleActionButtonSection: FC<{
action: BrandAction;
}> = ({ action }) => {
const history = useHistory();
const handleClick = () => {
if (action.action) {
action.action();
}
if (action.href) {
history.push(action.href);
}
};
let buttonAppearance: ButtonAppearance | undefined;
if (action.status === undefined) {
buttonAppearance = 'primary';
} else if (!action.disabled) {
buttonAppearance = 'secondary';
}
return (
{action.disabled && (
{action.disableTooltipContent?.()}
)}
);
};
const ActionChip: FC<{ status?: ActionStatus; statusTooltip?: string }> = ({
status,
statusTooltip,
}) => {
if (status === undefined) {
return null;
}
const chip = (
);
return statusTooltip ? (
{chip}
{statusTooltip}
) : (
chip
);
};
const DisabledActionHelper: FC = ({ children }) => (
{children}
);