/** * External Dependencies */ import { useState } from 'react'; import cx from 'classnames'; /** * WordPress Dependencies */ import { __ } from '@wordpress/i18n'; /** * Internal Dependencies */ import { TrashIcon, ViewIcon } from '@givewp/components/AdminDetailsPage/Icons'; import AdminDetailsPage from '@givewp/components/AdminDetailsPage'; import ConfirmationDialog from '@givewp/components/AdminDetailsPage/ConfirmationDialog'; import { getDonorOptionsWindowData, useDonorEntityRecord } from '@givewp/donors/utils'; import styles from './DonorDetailsPage.module.scss'; import tabDefinitions from './Tabs/definitions'; /** * @since 4.4.0 */ const StatusBadge = ({ status }: { status: string }) => { const statusMap = { current: __('Current', 'give'), prospective: __('Prospective', 'give'), retained: __('Retained', 'give'), lapsed: __('Lapsed', 'give'), new: __('New', 'give'), recaptured: __('Recaptured', 'give'), recurring: __('Recurring', 'give'), }; if (!statusMap[status]) { return null; } return (
{statusMap[status].substring(0, 1)} {statusMap[status]}
); }; /** * @since 4.4.0 */ export default function DonorDetailsPage() { const { adminUrl } = getDonorOptionsWindowData(); const [showConfirmationDialog, setShowConfirmationDialog] = useState(false); const { record: donor } = useDonorEntityRecord(); const SendEmailButton = ({ className }: { className: string }) => { if (!donor?.email) { return null; } return ( {__('Send Email', 'give')} ); }; const ContextMenuItems = ({ className }: { className: string }) => { return ( <> {donor?.wpUserPermalink && ( {__('View WordPress profile', 'give')} )} {/* setShowConfirmationDialog(true)} > {__('Delete Donor', 'give')} */} ); }; return ( } SecondaryActionButton={SendEmailButton} ContextMenuItems={ContextMenuItems} > setShowConfirmationDialog(false)} handleConfirm={() => { }} > {__('Are you sure you want to delete this donor?', 'give')} ); }