File "error-message.tsx"
Full Path: /home/warrior1/public_html/wp-content/plugins/woocommerce/packages/woocommerce-blocks/assets/js/editor-components/error-placeholder/error-message.tsx
File size: 1.11 KB
MIME-type: text/x-java
Charset: utf-8
/**
* External dependencies
*/
import { __ } from '@wordpress/i18n';
import { escapeHTML } from '@wordpress/escape-html';
/**
* Internal dependencies
*/
import { ErrorObject } from '.';
export interface ErrorMessageProps {
/**
* The error object.
*/
error: ErrorObject;
}
const getErrorMessage = ( { message, type }: ErrorObject ) => {
if ( ! message ) {
return __(
'An error has prevented the block from being updated.',
'woo-gutenberg-products-block'
);
}
if ( type === 'general' ) {
return (
<span>
{ __(
'The following error was returned',
'woo-gutenberg-products-block'
) }
<br />
<code>{ escapeHTML( message ) }</code>
</span>
);
}
if ( type === 'api' ) {
return (
<span>
{ __(
'The following error was returned from the API',
'woo-gutenberg-products-block'
) }
<br />
<code>{ escapeHTML( message ) }</code>
</span>
);
}
return message;
};
const ErrorMessage = ( { error }: ErrorMessageProps ): JSX.Element => (
<div className="wc-block-error-message">{ getErrorMessage( error ) }</div>
);
export default ErrorMessage;