| Server IP : 109.234.162.214 / Your IP : 216.73.216.112 Web Server : Apache System : Linux servd162214.srv.odns.fr 4.18.0-372.26.1.lve.1.el8.x86_64 #1 SMP Fri Sep 16 14:08:19 EDT 2022 x86_64 User : carpe ( 1178) PHP Version : 8.0.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /var/softaculous/sitepad/editor/site-data/plugins/pagelayer/js/react/src/components/ |
Upload File : |
import { useState} from '@wordpress/element';
import { dispatch } from '@wordpress/data';
export const RenderScreenIcons = (props) =>{
const { deviceType } = props;
const [activeMode, setActiveMode] = useState(deviceType || 'desktop');
const [visibleMode, setVisibleMode] = useState(false);
const modes = {
desktop: 'Desktop',
tablet: 'Tablet',
mobile: 'Mobile'
};
const handleModeChange = (mode) => {
if ( null !== dispatch( 'core/edit-post' ) ) {
const { __experimentalSetPreviewDeviceType: setPreviewDeviceType } = dispatch( 'core/edit-post' );
setPreviewDeviceType(modes[mode]);
}
setActiveMode(mode);
setVisibleMode( !visibleMode );
};
return (
<>
<div className="pagelayer-elp-screen">
{Object.keys(modes).map((mode) => (
<i
key={mode}
className={`pli pli-${mode} ${visibleMode ? 'open' : ''}`}
onClick={() => handleModeChange(mode)}
></i>
))}
<i className={`pagelayer-prop-screen pli pli-${activeMode}`} onClick={() => setVisibleMode( !visibleMode ) } ></i>
</div>
</>
);
}