Skip to content

Instantly share code, notes, and snippets.

@gutengeek
Created June 22, 2020 16:00
Show Gist options
  • Save gutengeek/4830eb28c382431a8763402ca6440ab6 to your computer and use it in GitHub Desktop.
Save gutengeek/4830eb28c382431a8763402ca6440ab6 to your computer and use it in GitHub Desktop.
// import via npm
import Components from "@gutengeek/components";
import '@gutengeek/components/build/core.css';
import '@gutengeek/components/build/index.css';
const {
ResponsiveControl
} = Components;
/**
* GutenBerg dependencies
*/
const {
InspectorControls
} = wp.blockEditor;
const { __ } = wp.i18n;
const {
PanelBody,
} = wp.components;
export default function MyComponent() {
const [ device, setDevice ] = useState( 'desktop' ); // desktop, tablet, mobile
const [ value, setValue ] = useState( {} );
const [ unit, setUnit ] = useState( 'px' );
return <InspectorControls>
<PanelBody title={ __('My Panel Body') }>
<ResponsiveControl label={ label }
device={ device }
units={ [ 'px', 'em' ] }
unit={ unit }
onChangeSizeType={ ( value ) => setUnit( value ) }
onChangeDevice={ ( value ) => setDevice( value ) }>
{
( deviceMode ) => {
return (
// return your children component
);
}
}
</PanelBody>
</InspectorControls>
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment