import {Button} from '../../ui/buttons/button'; import {Trans} from '../../i18n/trans'; import {ConfirmationDialog} from '../../ui/overlays/dialog/confirmation-dialog'; import {DialogTrigger} from '../../ui/overlays/dialog/dialog-trigger'; import React from 'react'; import {useDeleteSelectedRows} from '../requests/delete-selected-rows'; import {useDataTable} from './data-table-context'; import {useDialogContext} from '@common/ui/overlays/dialog/dialog-context'; import {errorStatusIs} from '@common/utils/http/error-status-is'; export function DeleteSelectedItemsAction() { return ( ); } function DeleteItemsDialog() { const deleteSelectedRows = useDeleteSelectedRows(); const {selectedRows, setSelectedRows} = useDataTable(); const {close} = useDialogContext(); return ( } body={ } confirm={} isDanger onConfirm={() => { deleteSelectedRows.mutate(undefined, { onSuccess: () => close(), onError: err => { if (errorStatusIs(err, 422)) { setSelectedRows([]); close(); } }, }); }} /> ); }