import styled from '@emotion/styled';
import {Button} from 'sentry/components/button';
import Confirm from 'sentry/components/confirm';
import {CopyToClipboardButton} from 'sentry/components/copyToClipboardButton';
import EmptyMessage from 'sentry/components/emptyMessage';
import Panel from 'sentry/components/panels/panel';
import PanelAlert from 'sentry/components/panels/panelAlert';
import PanelBody from 'sentry/components/panels/panelBody';
import PanelHeader from 'sentry/components/panels/panelHeader';
import PanelItem from 'sentry/components/panels/panelItem';
import {IconDownload, IconPrint} from 'sentry/icons';
import {t} from 'sentry/locale';
import {space} from 'sentry/styles/space';
type Props = {
codes: string[];
isEnrolled: boolean;
onRegenerateBackupCodes: () => void;
className?: string;
};
function RecoveryCodes({className, isEnrolled, codes, onRegenerateBackupCodes}: Props) {
const printCodes = () => {
// eslint-disable-next-line dot-notation
const iframe = window.frames['printable'];
iframe.document.write(codes.join(' '));
iframe.print();
iframe.document.close();
};
if (!isEnrolled || !codes) {
return null;
}
const formattedCodes = codes.join(' \n');
return (
{t('Unused Codes')}
{t(
'Make sure to save a copy of your recovery codes and store them in a safe place.'
)}