/**
 * @Move (SQKG)
 * Only used by the Documents module - move to Documents/
 */
import HuPills from '@material-hu/components/design-system/Pills';
import { PillsProps } from '@material-hu/components/design-system/Pills/types';

import { SignatureStatus } from 'src/types/documents';
import { useLokaliseTranslation } from 'src/utils/i18n';

type Props = {
  status: SignatureStatus;
};

const STATUS_COLOR_MAP: Record<SignatureStatus, PillsProps['type']> = {
  [SignatureStatus.SIGNED]: 'success',
  [SignatureStatus.SIGNED_IN_AGREEMENT]: 'success',
  [SignatureStatus.SIGNED_IN_DISAGREEMENT]: 'error',
  [SignatureStatus.SIGNATURE_NOT_NEEDED]: 'neutral',
  [SignatureStatus.PENDING]: 'warning',
};

const DocumentStatus = ({ status }: Props) => {
  const { t } = useLokaliseTranslation('documents');

  return (
    <HuPills
      type={STATUS_COLOR_MAP[status]}
      label={t('DOCUMENT_STATUS', { context: `${status}` })}
      hasIcon={false}
      size="small"
    />
  );
};

export default DocumentStatus;
