import {__} from '@wordpress/i18n'; import {useSWRConfig} from 'swr'; import RowAction from '@givewp/components/ListTable/RowAction'; import ListTableApi from '@givewp/components/ListTable/api'; import {useContext} from 'react'; import {ShowConfirmModalContext} from '@givewp/components/ListTable/ListTablePage'; import {Interweave} from 'interweave'; import './style.scss'; const donorsApi = new ListTableApi(window.GiveDonors); export function DonorsRowActions({item, setUpdateErrors, parameters}) { const showConfirmModal = useContext(ShowConfirmModalContext); const {mutate} = useSWRConfig(); const fetchAndUpdateErrors = async (parameters, endpoint, id, method) => { const deleteDonations = document.querySelector('#giveDonorsTableDeleteDonations') as HTMLInputElement; const response = await donorsApi.fetchWithArgs( endpoint, {ids: [id], deleteDonationsAndRecords: deleteDonations.checked}, method ); setUpdateErrors(response); await mutate(parameters); return response; }; const deleteDonor = async (selected) => await fetchAndUpdateErrors(parameters, '/delete', item.id, 'DELETE'); const confirmDeleteDonor = (selected) => (
{__('Really delete the follow donor?', 'give')}