soapbox/src/components/validation-checkmark.tsx

29 lines
786 B
TypeScript
Raw Normal View History

2023-02-06 18:01:03 +00:00
import clsx from 'clsx';
2022-06-09 17:45:09 +00:00
import React from 'react';
import { HStack, Icon, Text } from 'soapbox/components/ui';
interface IValidationCheckmark {
isValid: boolean;
text: string;
2022-06-09 17:45:09 +00:00
}
const ValidationCheckmark = ({ isValid, text }: IValidationCheckmark) => {
return (
<HStack alignItems='center' space={2} data-testid='validation-checkmark'>
<Icon
src={isValid ? require('@tabler/icons/outline/check.svg') : require('@tabler/icons/outline/point.svg')}
2023-02-06 18:01:03 +00:00
className={clsx({
2022-06-09 17:45:09 +00:00
'w-4 h-4': true,
'text-gray-400 dark:text-gray-600 dark:fill-gray-600 fill-gray-400': !isValid,
2022-06-09 17:45:09 +00:00
'text-success-500': isValid,
})}
/>
<Text theme='muted' size='sm'>{text}</Text>
</HStack>
);
};
export default ValidationCheckmark;