import type { FC, StateHookSetter } from '../../lib/teact/teact'; import { memo } from '../../lib/teact/teact'; import { formatStarsAsText } from '../../util/localization/format'; import useLang from '../../hooks/useLang'; import Checkbox from '../ui/Checkbox'; import ConfirmDialog from '../ui/ConfirmDialog'; import styles from './PaymentMessageConfirmDialog.module.scss'; type OwnProps = { isOpen: boolean; onClose: NoneToVoidFunction; userName?: string; messagePriceInStars: number; messagesCount: number; shouldAutoApprove: boolean; setAutoApprove: StateHookSetter; confirmHandler: NoneToVoidFunction; }; const PaymentMessageConfirmDialog: FC = ({ isOpen, onClose, userName, messagePriceInStars, messagesCount, shouldAutoApprove: shouldPaidMessageAutoApprove, setAutoApprove: setShouldPaidMessageAutoApprove, confirmHandler, }) => { const lang = useLang(); const confirmPaymentMessage = lang('ConfirmationModalPaymentForMessage', { user: userName, amount: formatStarsAsText(lang, messagePriceInStars), totalAmount: formatStarsAsText(lang, messagePriceInStars * messagesCount), count: messagesCount, }, { withMarkdown: true, withNodes: true, pluralValue: messagesCount, }); const confirmLabel = lang('PayForMessage', { count: messagesCount }, { withNodes: true, pluralValue: messagesCount, }); return ( {confirmPaymentMessage} ); }; export default memo(PaymentMessageConfirmDialog);