| Server IP : 185.252.147.100 / Your IP : 216.73.217.33 Web Server : nginx/1.27.3 System : Linux mitrofanov.ru 6.1.0-37-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.140-1 (2025-05-22) x86_64 User : mitr ( 1000) PHP Version : 8.2.29 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/html/ephotel.ru/wordpress/wp-content/plugins/generateblocks/src/pattern-library/ |
Upload File : |
import { Button, Modal, PanelBody } from '@wordpress/components';
import { useState } from '@wordpress/element';
import { LibraryProvider } from './components/library-provider';
import LibraryLayout from './components/library-layout';
import { addFilter } from '@wordpress/hooks';
import { __ } from '@wordpress/i18n';
import './editor.scss';
function PatternLibrary( content, { activePanel } ) {
const [ isOpen, setIsOpen ] = useState( false );
if ( activePanel ) {
return content;
}
return (
<>
<PanelBody>
<h2 className="gblocks-editor-sidebar__panel-title">
{ __( 'Pattern Library', 'generateblocks' ) }
</h2>
<Button
className="gblocks-pattern-library-button"
variant="secondary"
onClick={ () => setIsOpen( true ) }
isPressed={ isOpen }
>
{ __( 'Open Pattern Library', 'generateblocks' ) }
</Button>
</PanelBody>
{ content }
{ !! isOpen && (
<Modal
className="gblocks-pattern-library-modal"
isFullScreen
onRequestClose={ () => setIsOpen( false ) }
>
<LibraryProvider>
<LibraryLayout closeModal={ () => setIsOpen( false ) } />
</LibraryProvider>
</Modal>
) }
</>
);
}
addFilter(
'generateblocks.editor.sidebar',
'generateblocks/pattern-library',
PatternLibrary
);