import { __ } from '@wordpress/i18n'; import { escapeHTML } from '@wordpress/escape-html'; import { formatFileSize } from '../../utils'; const notOptimizedTemplate = () => { return ` `; }; const loadingTemplate = ( action ) => { let buttonText; switch ( action ) { case 'restore': buttonText = __( 'Restoring…', 'image-optimizer' ); break; case 'optimize': buttonText = __( 'Optimizing…', 'image-optimizer' ); break; case 'reoptimize': buttonText = __( 'Reoptimizing…', 'image-optimizer' ); break; default: buttonText = __( 'Loading…', 'image-optimizer' ); } return ` `; }; const errorTemplate = ( message ) => { return ` `; }; const successTemplate = ( data ) => { const absoluteValue = formatFileSize( data?.saved?.absolute, 1 ); return `
${ __( 'Image sizes optimized', 'image-optimizer' ) }: ${ data?.sizesOptimized }
${ __( 'Overall saving', 'image-optimizer' ) }: ${ data?.saved?.relative }% (${ absoluteValue })
${ data?.canBeRestored ? ` ` : '' } `; }; const listViewTemplates = Object.freeze( { notOptimizedTemplate, loadingTemplate, errorTemplate, successTemplate, } ); export default listViewTemplates;