Server IP : 192.158.238.246 / Your IP : 18.222.209.172 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 React from 'react' import { __ } from '@wordpress/i18n' import { Button } from '../../common/Button' import { useSnippetsAPI } from '../../../hooks/useSnippets' import { downloadSnippetExportFile } from '../../../utils/files' import { useSnippetForm } from '../../../hooks/useSnippetForm' import type { SnippetsExport } from '../../../types/SnippetsExport' import type { AxiosResponse } from 'axios' export const ExportButtons: React.FC = () => { const api = useSnippetsAPI() const { snippet, isWorking, setIsWorking, handleRequestError } = useSnippetForm() const handleFileResponse = (response: AxiosResponse<string | SnippetsExport>) => { const data = response.data setIsWorking(false) console.info('file response', response) if ('string' === typeof data) { downloadSnippetExportFile(data, snippet) } else { const JSON_INDENT_SPACES = 2 downloadSnippetExportFile(JSON.stringify(data, undefined, JSON_INDENT_SPACES), snippet, 'json') } } return ( <> <Button name="export_snippet" onClick={() => { setIsWorking(true) api.export(snippet) .then(handleFileResponse) // translators: %s: error message. .catch((error: unknown) => handleRequestError(error, __('Could not download export file.', 'code-snippets'))) }} disabled={isWorking} > {__('Export', 'code-snippets')} </Button> {window.CODE_SNIPPETS_EDIT?.enableDownloads ? <Button name="export_snippet_code" onClick={() => { api.exportCode(snippet) .then(handleFileResponse) // translators: %s: error message. .catch((error: unknown) => handleRequestError(error, __('Could not download file.', 'code-snippets'))) }} disabled={isWorking} > {__('Export Code', 'code-snippets')} </Button> : ''} </> ) }