@wordpress/components
Version:
UI components for WordPress.
39 lines (32 loc) • 1.15 kB
JavaScript
import _extends from "@babel/runtime/helpers/esm/extends";
import { createElement } from "@wordpress/element";
// @ts-nocheck
/**
* WordPress dependencies
*/
import { forwardRef, useContext } from '@wordpress/element';
/**
* Internal dependencies
*/
import ToolbarItem from '../toolbar-item';
import ToolbarContext from '../toolbar-context';
import DropdownMenu from '../../dropdown-menu';
function ToolbarDropdownMenu(props, ref) {
const accessibleToolbarState = useContext(ToolbarContext);
if (!accessibleToolbarState) {
return createElement(DropdownMenu, props);
} // ToobarItem will pass all props to the render prop child, which will pass
// all props to the toggle of DropdownMenu. This means that ToolbarDropdownMenu
// has the same API as DropdownMenu.
return createElement(ToolbarItem, _extends({
ref: ref
}, props.toggleProps), toolbarItemProps => createElement(DropdownMenu, _extends({}, props, {
popoverProps: {
variant: 'toolbar',
...props.popoverProps
},
toggleProps: toolbarItemProps
})));
}
export default forwardRef(ToolbarDropdownMenu);
//# sourceMappingURL=index.js.map