w-aura/src/components/EmailItem/index.tsx
2024-01-30 17:59:31 +00:00

40 lines
868 B
TypeScript
Executable File

import { Currency, Locale, Price } from "../PaymentTable";
import styles from "./styles.module.css";
export interface IEmailItemProps {
email: string;
price: number;
className?: string;
}
const currency = Currency.USD;
const locale = Locale.EN;
const roundToWhole = (value: string | number): number => {
value = Number(value);
if (value % Math.floor(value) !== 0) {
return value;
}
return Math.floor(value);
};
const formatEmail = (email: string): string => {
return `${email.slice(0, 4)}****`;
};
function EmailItem({
email,
price,
className = "",
}: IEmailItemProps): JSX.Element {
const _price = new Price(roundToWhole(price), currency, locale);
return (
<span className={`${styles.container} ${className}`}>
{formatEmail(email)} <strong> chose {_price.format()} </strong>
</span>
);
}
export default EmailItem;